aboutsummaryrefslogtreecommitdiff
path: root/edit-menu
diff options
context:
space:
mode:
Diffstat (limited to 'edit-menu')
-rwxr-xr-xedit-menu25
1 files changed, 25 insertions, 0 deletions
diff --git a/edit-menu b/edit-menu
new file mode 100755
index 0000000..ed180a2
--- /dev/null
+++ b/edit-menu
@@ -0,0 +1,25 @@
1#!/bin/sh
2
3# A "filter", based on your favorite editor.
4# It reads lines from stdin, opens a file containing these lines
5# with your favorite editor, and then prints the content of the file
6# $EDITMENU to stdout. I have configured my editor to write the
7# current line to $EDITMENU when pressing ;; (semicolon twice) like this
8# map ;; !!tee -a $EDITMENU^M " For nvi
9
10# It can be used to replace dmenu or similar menu applications in
11# constrained environment. It works even without any (n)curses library,
12# assuming you use a suitable editor (like ed).
13
14editor=${EDITOR:-vi}
15
16export EDITMENU=$(mktemp)
17in=$(mktemp)
18
19cat > "$in"
20
21# This is a dirty trick to "help" the editor (vi) understand that it can
22# take over the tty to get its input.
23$editor "$in" < /dev/tty
24
25cat $EDITMENU

Generated with cgit - Back to sebastiano.tronto.net