Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
c43f6ed
Move optional steps for testing VMs out of README.md file
jafingerhut Oct 16, 2024
459987f
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Oct 25, 2024
5f69ce2
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Oct 31, 2024
fcdf6d2
Merge remote-tracking branch 'upstream/master'
jafingerhut Nov 3, 2024
27310d1
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Nov 7, 2024
51d5317
Merge remote-tracking branch 'upstream/master'
jafingerhut Nov 13, 2024
0054e7b
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Dec 1, 2024
b8a81f2
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Dec 1, 2024
1b02938
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Dec 10, 2024
f574bea
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Dec 10, 2024
40ac9e0
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Dec 30, 2024
365a909
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Dec 30, 2024
e62c95b
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Dec 30, 2024
0af41fd
Merge remote-tracking branch 'upstream/master'
jafingerhut Dec 30, 2024
d600b63
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Dec 31, 2024
29fd124
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Dec 31, 2024
fdd4721
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Jan 1, 2025
089cbd8
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Jan 3, 2025
ff1664a
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Jan 25, 2025
b8c5cab
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Jan 25, 2025
ff9c994
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Jan 27, 2025
3224949
Add 2025-Jan-30 versions of source code for install.sh
jafingerhut Jan 30, 2025
9235e50
Merge branch 'master' of https://github.com/p4lang/tutorials
jafingerhut Feb 11, 2025
fe22d96
Merge remote-tracking branch 'upstream/master'
jafingerhut Feb 28, 2025
2f66fc9
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Feb 28, 2025
82856d1
Merge remote-tracking branch 'upstream/master'
jafingerhut Mar 2, 2025
dcb3d72
Merge remote-tracking branch 'upstream/master'
jafingerhut Apr 1, 2025
2bb59c9
Merge remote-tracking branch 'up/master'
jafingerhut Apr 21, 2025
7f076ba
Merge remote-tracking branch 'up/master'
jafingerhut Apr 21, 2025
4e1408f
Merge remote-tracking branch 'up/master'
jafingerhut May 1, 2025
cdceaab
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut May 1, 2025
aa0e580
Merge remote-tracking branch 'up/master'
jafingerhut May 13, 2025
745f2bd
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut May 13, 2025
7b68640
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Jun 1, 2025
21aca3b
Merge remote-tracking branch 'upstream/master'
jafingerhut Jun 1, 2025
72c2c09
Merge remote-tracking branch 'up/master'
jafingerhut Jul 3, 2025
cb9381d
Merge remote-tracking branch 'up/master'
jafingerhut Jul 5, 2025
70c4cd8
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Aug 1, 2025
b71ef2a
Merge remote-tracking branch 'up/master'
jafingerhut Aug 1, 2025
54b84c2
Merge remote-tracking branch 'up/master'
jafingerhut Sep 1, 2025
471c37a
Merge remote-tracking branch 'up/master'
jafingerhut Oct 1, 2025
cf02788
Merge remote-tracking branch 'up/master'
jafingerhut Nov 1, 2025
143c96d
Merge remote-tracking branch 'up/master'
jafingerhut Nov 14, 2025
573a295
Merge remote-tracking branch 'up/master'
jafingerhut Jan 17, 2026
bd8682a
Merge remote-tracking branch 'up/master'
jafingerhut Jan 23, 2026
488b5d4
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Jan 23, 2026
6d5bb15
Merge remote-tracking branch 'up/master'
jafingerhut Feb 1, 2026
d9cb2b8
Merge remote-tracking branch 'up/master'
jafingerhut Feb 3, 2026
f562b70
Merge remote-tracking branch 'up/master'
jafingerhut Feb 21, 2026
9f2940c
Merge remote-tracking branch 'up/master'
jafingerhut Feb 21, 2026
61e3320
Merge remote-tracking branch 'up/master'
jafingerhut Mar 1, 2026
7b5d789
Merge remote-tracking branch 'upstream/master'
jafingerhut Mar 1, 2026
be8157e
Merge branch 'master' of github.com:jafingerhut/tutorials
jafingerhut Aug 1, 2026
02aace1
Merge remote-tracking branch 'up/master'
jafingerhut Aug 1, 2026
01686ba
Merge remote-tracking branch 'up/master'
jafingerhut Aug 5, 2026
6c0f979
Merge remote-tracking branch 'up/master'
jafingerhut Sep 1, 2026
2b94c35
Merge remote-tracking branch 'up/master'
jafingerhut Sep 4, 2026
df05df7
Merge remote-tracking branch 'up/master'
jafingerhut Oct 6, 2026
fc5259d
Merge remote-tracking branch 'up/master'
jafingerhut Oct 6, 2026
283e8de
Merge remote-tracking branch 'up/master'
jafingerhut Oct 6, 2026
c04413c
Merge remote-tracking branch 'up/master'
jafingerhut Oct 6, 2026
007ef79
Merge remote-tracking branch 'up/master'
jafingerhut Oct 15, 2026
dc86bbf
Copy vim and Emacs P4 mode definition files to vm-ubuntu-26.04
jafingerhut Oct 15, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file removed vm-ubuntu-24.04/p4-logo.png
Binary file not shown.
3 changes: 0 additions & 3 deletions vm-ubuntu-24.04/p4-logo.png.license

This file was deleted.

135 changes: 135 additions & 0 deletions vm-ubuntu-26.04/p4.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
" SPDX-FileCopyrightText: 2014 Barefoot Networks, Inc.
" SPDX-License-Identifier: Apache-2.0
" Vim syntax file
" Language: P4_16
" Maintainer: Antonin Bas, Barefoot Networks Inc
" Latest Revision: 5 August 2014
" Updated By: Gyanesh Patra, Unicamp University
" Latest Revision: 12 April 2016
" Updated Again By: Robert MacDavid, Princeton University
" Latest Revision: 12 June 2017

if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif

" Use case sensitive matching of keywords
syn case match

syn keyword p4ObjectKeyword action apply control default
syn keyword p4ObjectKeyword enum extern exit
syn keyword p4ObjectKeyword header header_union
syn keyword p4ObjectKeyword match_kind
syn keyword p4ObjectKeyword package parser
syn keyword p4ObjectKeyword state struct switch size
syn keyword p4ObjectKeyword table transition tuple typedef
syn keyword p4ObjectKeyword verify

" Tables
syn keyword p4ObjectAttributeKeyword key actions default_action entries
syn keyword p4ObjectAttributeKeyword implementation
" Counters and meters
syn keyword p4ObjectAttributeKeyword counters meters
" Var Attributes
syn keyword p4ObjectKeyword const in out inout


syn keyword p4Annotation @name @tableonly @defaultonly
syn keyword p4Annotation @globalname @atomic @hidden


syn keyword p4MatchTypeKeyword exact ternary lpm range

syn keyword p4TODO contained FIXME TODO
syn match p4Comment '\/\/.*' contains=p4TODO
syn region p4BlockComment start='\/\*' end='\*\/' contains=p4TODO keepend

syn match p4Preprocessor '#(include|define|undef|if|ifdef) .*$'
syn match p4Preprocessor '#(if|ifdef|ifndef|elif|else) .*$'
syn match p4Preprocessor '#(endif|defined|line|file) .*$'
syn match p4Preprocessor '#(error|warning) .*$'

syn keyword p4Type bit bool int varbit void error

" Integer Literals

syn match p4Int '[0-9][0-9_]*'
syn match p4Indentifier '[A-Za-z_][A-Za-z0-9_]*'
syn match p4HexadecimalInt '0[Xx][0-9a-fA-F]\+'
syn match p4DecimalInt '0[dD][0-9_]\+'
syn match p4OctalInt '0[oO][0-7_]\+'
syn match p4BinaryInt '0[bB][01_]\+'


syn region p4SizedType start='(bit|int|varbit)\<' end='\>'
syn match p4UserType '[A-Za-z_][A-Za-z0-9_]*[_][t]\W'
syn keyword p4Operators and or not &&& mask


" Header Methods
syn keyword p4Primitive isValid setValid setInvalid
" Table Methods
syn keyword p4Primitive hit action_run
" Packet_in methods
syn keyword p4Primitive extract lookahead advance length
" Packet_out methods
syn keyword p4Primitive emit
" Known parser states
syn keyword p4Primitive accept reject
" Misc
syn keyword p4Primitive NoAction


syn keyword p4Conditional if else select
syn keyword p4Statement return

" Don't Care
syn keyword p4Constant _
" Error
syn keyword p4Constant NoError PacketTooShort NoMatch StackOutOfBounds
syn keyword p4Constant OverwritingHeader HeaderTooShort ParserTiimeout
" Boolean
syn keyword p4Boolean false true

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Apply highlight groups to syntax groups defined above
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_p4_syntax_inits")
if version <= 508
let did_p4_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif

HiLink p4ObjectKeyword Repeat
HiLink p4UserType Type
HiLink p4ObjectAttributeKeyword Keyword
HiLink p4TypeAttribute StorageClass
HiLink p4Annotation Special
HiLink p4MatchTypeKeyword Keyword
HiLink p4TODO Todo
HiLink p4Comment Comment
HiLink p4BlockComment Comment
HiLink p4Preprocessor PreProc
HiLink p4SizedType Type
HiLink p4Type Type
HiLink p4DecimalInt Number
HiLink p4HexadecimalInt Number
HiLink p4OctalInt Number
HiLink p4BinaryInt Number
HiLink p4Int Number
HiLink p4Operators Operator
HiLink p4Primitive Function
HiLink p4Conditional Conditional
HiLink p4Statement Statement
HiLink p4Constant Constant
HiLink p4Boolean Boolean

delcommand HiLink
endif

let b:current_syntax = "p4"
Loading
Loading