plan9 is meant to have very little "native". Even moving to line number 4 with :4 is not native, it's in the plumber.
[1] https://upload.wikimedia.org/wikipedia/commons/thumb/9/98/Ac...
plan9 is meant to have very little "native". Even moving to line number 4 with :4 is not native, it's in the plumber.
[1] https://upload.wikimedia.org/wikipedia/commons/thumb/9/98/Ac...
Yes, plumber is the app behind the scenes that make acme so much integrated with OS and other apps. The same applies for right-click on the text between '<' and '>' in includes (in C source files) for opening header files. That's the kind of programming environment that I miss when using emacs/vi.
In that screenshot I am editing PHP files on an OpenBSD box at the colocation. It is running u9fs tunneled over ssh so I can connect to the filesystem via 9p.
I have three plumbing rules for editing PHP.
One window runs the shell command "tail -f /n/momo/var/log/httpd/error". From there I can plumb
Syntax error in /path/webpage.php on line 56
It extracts the filename part "/path/webpage.php" and line "56". The web server is chrooted.It then checks if /n/momo/var/www/path/webpage.php exists and if it does it opens that file at line 56
If I plumb a file ending in .class or .inc it looks in /n/momo/var/www/php (my include directory) and opens it if it exists. This is so I can plumb file.class in include("file.class") in php files
The final one fires if I plumb "validfunctioname(", it runs a shell script on the server and greps for that function in all my php files.
I use the plan9 method of defining functions with
function
validfunctionname(args)
so that grep -ni '^validfunctionname(' will work.So I had what most people would think a pretty useful PHP ide in twenty lines of code.