* [9fans] Acme Edit scriptlets
@ 2013-03-29 0:38 Bence Fábián
2013-03-29 1:19 ` phineas.pett
` (2 more replies)
0 siblings, 3 replies; 18+ messages in thread
From: Bence Fábián @ 2013-03-29 0:38 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
[-- Attachment #1: Type: text/plain, Size: 217 bytes --]
Hi!
I did a quick writeup on little Edit scripts
(well basicly sam(1) scripts)
If anyone have more feel free to contribute.
Maybe someone could put them on the wiki even.
http://bencef.com/blog/4/
bencef
[-- Attachment #2: Type: text/html, Size: 446 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-03-29 0:38 [9fans] Acme Edit scriptlets Bence Fábián
@ 2013-03-29 1:19 ` phineas.pett
2013-03-29 8:22 ` Peter A. Cejchan
2013-03-29 8:20 ` dexen deVries
2013-04-04 10:19 ` Mark van Atten
2 siblings, 1 reply; 18+ messages in thread
From: phineas.pett @ 2013-03-29 1:19 UTC (permalink / raw)
To: 9fans
> Hi!
>
> I did a quick writeup on little Edit scripts
> (well basicly sam(1) scripts)
> If anyone have more feel free to contribute.
> Maybe someone could put them on the wiki even.
Nice idea...
Here's a simple awk bit I use in Acme for centering text (its name is
the center-line rune: ℄)
#!/bin/rc
# Center text
awk '{l=length();s=int((70-l)/2); printf "%"(s+l)"s\n",$0}'
It doesn't seem to be common practice, but I like to name editing
commands with unicode runes to save room: i.e. ← and → for
indentation (used with code), or ⇐ and ⇒ for indentation + a reformat
(used for natural language next). I find they serve a bit like icons.
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-03-29 0:38 [9fans] Acme Edit scriptlets Bence Fábián
2013-03-29 1:19 ` phineas.pett
@ 2013-03-29 8:20 ` dexen deVries
2013-03-29 8:25 ` Peter A. Cejchan
2013-03-29 9:50 ` Richard Miller
2013-04-04 10:19 ` Mark van Atten
2 siblings, 2 replies; 18+ messages in thread
From: dexen deVries @ 2013-03-29 8:20 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
On Friday 29 of March 2013 01:38:06 Bence Fábián wrote:
> I did a quick writeup on little Edit scripts
> (well basicly sam(1) scripts)
> If anyone have more feel free to contribute.
> Maybe someone could put them on the wiki even.
stuff i use:
# clear whole window -- usefull with +Errors
Edit ,d
# decrease TAB indentation of selection
Edit s,^TAB,,g
# increase TAB indentation of selection
# the ^. part ensures we indent only lines with content
# and leave empty lines undisturbed
Edit s,^.,TAB&,g
--
dexen deVries
[[[↓][→]]]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-03-29 1:19 ` phineas.pett
@ 2013-03-29 8:22 ` Peter A. Cejchan
0 siblings, 0 replies; 18+ messages in thread
From: Peter A. Cejchan @ 2013-03-29 8:22 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
[-- Attachment #1: Type: text/plain, Size: 2578 bytes --]
Thanks, very nice, mates!
I humbly add some of minebelow.
Best, ++pac
#####
## Latin
äëïñöüÿÄÅËÏÖÜ
## Greek
αβγδεζηθλμνξπρστφψωΓΔΘΛΞΠΣΦΨΩ
## select text
:; # select all text
:;25 # select from start to line 25 (inclusive)
:25; # select from line 25 (inclusive) to EOF
Edit /;[ ]*\/\// # select from ; to // comments
## edit text
Edit s/^/ /g # increase indentation
Edit s,^ ,,g # decrease indentation
Edit s/^/\/\/ /g #comment out using //
Edit s/\n\n\n+/\n\n/g # remove redundant newlines, keep max two
Edit s/^[ ]+//g # remove leading whitespace
Edit s/[ ]+$//g # remove trailing whitespace
Edit s/ +/ /g # remove multiple spaces
Edit s/;$//g # remove trailing semicolon
Edit s/\*+\///g # comments
Edit s/\/\*+/\/\//g
Edit s/[\(\)]/ /g # remove ()
Edit s/.*/(&)/g # add ()
Edit s/.*/float64(&)/g # float64()
Edit s/.*/} & {/g # add } {
Edit s/^/\/\/ /g # // comment out
Edit /;[ ]*\/\// Edit s/;// # find and remove semicolon before //
comments
Edit s/\+\+[a-zA-Z]+[0-9a-zA-Z]*/&++/ Edit s/\+\+/d # NOT WORKING prefix
to postfix operator
Edit s/->/./g # struct pointer
Edit ,s/\+\+([A-Za-z]+[A-Za-z0-9]*)/\1++/g# prefix to postfix operator: ++
Edit ,s/\-\-([A-Za-z]+[A-Za-z0-9]*)/\1--/g# prefix to postfix operator: --
# prefix to postfix operator: ++i --> i++
Edit /\+\+[a-zA-Z_]+[0-9a-zA-Z_]*/{
x/\+\+/d
a/++/
}
Edit s/\+\+([A-Za-z]+[A-Za-z0-9]*)/\1++/ # prefix to postfix operator: ++i
--> i++
| 9 sed 's/\(//; s/(.*)\)/\1/' # remove outermost pair of parentheses
Edit s:\((.*)\):\1:g # remove outermost pair of parentheses
On Fri, Mar 29, 2013 at 2:19 AM, <phineas.pett@gmail.com> wrote:
> > Hi!
> >
> > I did a quick writeup on little Edit scripts
> > (well basicly sam(1) scripts)
> > If anyone have more feel free to contribute.
> > Maybe someone could put them on the wiki even.
>
> Nice idea...
>
> Here's a simple awk bit I use in Acme for centering text (its name is
> the center-line rune: ℄)
>
> #!/bin/rc
> # Center text
> awk '{l=length();s=int((70-l)/2); printf "%"(s+l)"s\n",$0}'
>
> It doesn't seem to be common practice, but I like to name editing
> commands with unicode runes to save room: i.e. ← and → for
> indentation (used with code), or ⇐ and ⇒ for indentation + a reformat
> (used for natural language next). I find they serve a bit like icons.
>
>
>
[-- Attachment #2: Type: text/html, Size: 3231 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-03-29 8:20 ` dexen deVries
@ 2013-03-29 8:25 ` Peter A. Cejchan
2013-03-29 8:48 ` dexen deVries
2013-03-29 9:50 ` Richard Miller
1 sibling, 1 reply; 18+ messages in thread
From: Peter A. Cejchan @ 2013-03-29 8:25 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
[-- Attachment #1: Type: text/plain, Size: 853 bytes --]
Maybe it's time for an Acme wiki page?
Also, could you share the plumbing rules you use (for my
inspiration/learning)?
Happy Easter, folks!
++pac
On Fri, Mar 29, 2013 at 9:20 AM, dexen deVries <dexen.devries@gmail.com>wrote:
> On Friday 29 of March 2013 01:38:06 Bence Fábián wrote:
> > I did a quick writeup on little Edit scripts
> > (well basicly sam(1) scripts)
> > If anyone have more feel free to contribute.
> > Maybe someone could put them on the wiki even.
>
> stuff i use:
>
> # clear whole window -- usefull with +Errors
> Edit ,d
>
> # decrease TAB indentation of selection
> Edit s,^TAB,,g
>
>
> # increase TAB indentation of selection
> # the ^. part ensures we indent only lines with content
> # and leave empty lines undisturbed
> Edit s,^.,TAB&,g
>
> --
> dexen deVries
>
> [[[↓][→]]]
>
>
>
[-- Attachment #2: Type: text/html, Size: 1266 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-03-29 8:25 ` Peter A. Cejchan
@ 2013-03-29 8:48 ` dexen deVries
0 siblings, 0 replies; 18+ messages in thread
From: dexen deVries @ 2013-03-29 8:48 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
On Friday 29 of March 2013 09:25:47 Peter A. Cejchan wrote:
> Also, could you share the plumbing rules you use (for my
> inspiration/learning)?
1) re-format PHP's strange error mesages into standard
FILE_PATHNAME:LINE_NUMBER
# ... called in FILE_PATHNAME on line LINE_NUMBER and defined in FILE_PATHNAME
on line LINE_NUMBER
data matchesmultiline '.*rror.*called in ([^ ]+) on line ([0-9]+) and defined
in ([^ ]+) on line ([0-9]+).*'
arg isfile $1
data set $file
attr add addr=$2
type is text
plumb to edit
#file / line in PHP format
data matchesmultiline '(.+) on line ([0-9]+).*'
arg isfile $1
data set $file
attr add addr=$2
type is text
plumb to edit
2) display php's function prototypes on right-click on a function name with an
opening parenthesis. the `W' script greps a flat text file list of functions
(with arguments and return types) and outputs to +Errors window.
type is text
data matches '[a-zA-Z_][a-zA-Z_0-9]*[(]'
plumb start W --wdir $wdir $data
* * *
a half-hearted support for displaying SQL table schema; again, `Wtable' is a
script outputting definition of indicated table.
type is text
data matches '.*(FROM|JOIN)[ ]+([^ ]+).*'
data set $2
plumb start Wtable --wdir $wdir $data
--
dexen deVries
[[[↓][→]]]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-03-29 8:20 ` dexen deVries
2013-03-29 8:25 ` Peter A. Cejchan
@ 2013-03-29 9:50 ` Richard Miller
2013-03-29 16:20 ` Skip Tavakkolian
1 sibling, 1 reply; 18+ messages in thread
From: Richard Miller @ 2013-03-29 9:50 UTC (permalink / raw)
To: 9fans
> # increase TAB indentation of selection
> # the ^. part ensures we indent only lines with content
> # and leave empty lines undisturbed
> Edit s,^.,TAB&,g
Very nice.
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-03-29 9:50 ` Richard Miller
@ 2013-03-29 16:20 ` Skip Tavakkolian
0 siblings, 0 replies; 18+ messages in thread
From: Skip Tavakkolian @ 2013-03-29 16:20 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
this also works:
# indent
Edit ,x/^./ y/./ c/ /
# outdent
Edit ,x/^ / c//
-Skip
On Fri, Mar 29, 2013 at 2:50 AM, Richard Miller <9fans@hamnavoe.com> wrote:
>> # increase TAB indentation of selection
>> # the ^. part ensures we indent only lines with content
>> # and leave empty lines undisturbed
>> Edit s,^.,TAB&,g
>
> Very nice.
>
>
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-03-29 0:38 [9fans] Acme Edit scriptlets Bence Fábián
2013-03-29 1:19 ` phineas.pett
2013-03-29 8:20 ` dexen deVries
@ 2013-04-04 10:19 ` Mark van Atten
2013-04-04 12:08 ` dexen deVries
2013-04-04 12:16 ` Bence Fábián
2 siblings, 2 replies; 18+ messages in thread
From: Mark van Atten @ 2013-04-04 10:19 UTC (permalink / raw)
To: 9fans
On Friday, 29 March 2013 01:38:06 UTC+1, Bence Fábián wrote:
> I did a quick writeup on little Edit scripts
Many thanks, this thread is very useful.
There is also Jason Catena's list of Edit idioms at
https://raw.github.com/catenate/acme-fonts/master/test/1/acme/Edit/sam
When editing and re-editing latex, I regularly pipe selections
through a simple-minded script called `chunk' which does most of
the work for obtaining semantic linebreaks. That goes back to a
recommendation by Kernighan in his paper `Unix for beginners' of
1974; see the quotation, comments and link at [1].
#!/usr/local/plan9/bin/rc
# chunk up (to prepare) for semantic linebreaks
# do not break within \cite
# do not break within $$ math
# break after closing parentheses ),]
# break before an opening parentheses (,[
ssam -e 'x/(^[^%].+\n)+/ y/\\cite[^{]*{(\n|.)*}/ y/\$.*\$/
x/(([^A-Z]\.)|[,;:!?]|\)|\]) | (\(|\[)/ s/ /\n/' \ | 9 fmt -w 60
-j
For batch processing probably something more sophisticated would
be needed to leave various environments unchunked. But I don't use
it that way, and just apply it to selections where I know its use
makes sense. Usually these are areas where I have just been doing
a lot of rewriting.
There's no point in chunking up commented material, and sometimes
it is actually convenient to have a place where I can keep things
unchunked for reference.
The original chunk command in Writer's Workbench [2], for troff not
latex, was based on a parser for English, I think. I find I don't
want that (because I write in other languages as well), and that
even in English I don't need it (because the chunking based on
interpunction is always fine with me, and where I care about the
remaining cases, I prefer to do it myself; but see [3]).
Mark.
[1] http://rhodesmill.org/brandon/2012/one-sentence-per-line/
[2] http://man.cat-v.org/unix_WWB/1/chunk
[3] https://github.com/waldir/semantic-linebreaker
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-04-04 10:19 ` Mark van Atten
@ 2013-04-04 12:08 ` dexen deVries
2013-04-04 12:16 ` Bence Fábián
1 sibling, 0 replies; 18+ messages in thread
From: dexen deVries @ 2013-04-04 12:08 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
[-- Attachment #1: Type: text/plain, Size: 571 bytes --]
On Thursday 04 of April 2013 10:19:23 Mark van Atten wrote:
> On Friday, 29 March 2013 01:38:06 UTC+1, Bence Fábián wrote:
> > I did a quick writeup on little Edit scripts
(p9p specific)
attached is my dirty hack for automagic grepping of $% file or recursively %s
dir or pipe.
a funky goodie:
automatically supplies `.' (dot) between arguments, so for example:
$ G some token here
becomes `grep some.token.here'
--
dexen deVries
[[[↓][→]]]
``we, the humanity'' is the greatest experiment we, the humanity, ever
undertook.
[-- Attachment #2: G --]
[-- Type: text/plain, Size: 440 bytes --]
#!/usr/bin/env rc
. 9.rc
s=()
arg=()
fn addS {
if (~ $#s 0)
s=$1
if not
s=$s.$1
}
while (! ~ $#* 0) {
if (~ $1 -*)
arg=($arg $1)
if not
addS $1
shift
}
if (u test -p /dev/stdin) {
grep -n $arg $s
exit
}
if (test -f $%)
grep -n $arg $s /dev/null `{basename $%}
if not
find . -type f | grep -v '[.]/share/doc/doxygen/|/[.]git/|/[.]svn/|[.](mo|pot)$' | xargs grep -n $arg $s /dev/null
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-04-04 10:19 ` Mark van Atten
2013-04-04 12:08 ` dexen deVries
@ 2013-04-04 12:16 ` Bence Fábián
2013-04-04 12:28 ` erik quanstrom
1 sibling, 1 reply; 18+ messages in thread
From: Bence Fábián @ 2013-04-04 12:16 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
[-- Attachment #1: Type: text/plain, Size: 2487 bytes --]
Cool.
Here's a script i use to generate case
insensitive regexes. It turns
FooBar
into
[Ff][Oo][Oo][Bb][Aa][Rr]
term% cat /bin/uncase
#!/bin/rc
exec awk '{
lower = tolower($0)
upper = toupper($0)
len = length($0)
for( i = 1 ; i <= len ; i++ )
printf "[" substr(upper, i, 1) substr(lower, i, 1) "]"
printf "\n"
}'
2013/4/4 Mark van Atten <vanattenmark@gmail.com>
> On Friday, 29 March 2013 01:38:06 UTC+1, Bence Fábián wrote:
>
> > I did a quick writeup on little Edit scripts
>
> Many thanks, this thread is very useful.
>
> There is also Jason Catena's list of Edit idioms at
> https://raw.github.com/catenate/acme-fonts/master/test/1/acme/Edit/sam
>
> When editing and re-editing latex, I regularly pipe selections
> through a simple-minded script called `chunk' which does most of
> the work for obtaining semantic linebreaks. That goes back to a
> recommendation by Kernighan in his paper `Unix for beginners' of
> 1974; see the quotation, comments and link at [1].
>
>
>
> #!/usr/local/plan9/bin/rc
> # chunk up (to prepare) for semantic linebreaks
>
> # do not break within \cite
> # do not break within $$ math
> # break after closing parentheses ),]
> # break before an opening parentheses (,[
>
> ssam -e 'x/(^[^%].+\n)+/ y/\\cite[^{]*{(\n|.)*}/ y/\$.*\$/
> x/(([^A-Z]\.)|[,;:!?]|\)|\]) | (\(|\[)/ s/ /\n/' \ | 9 fmt -w 60
> -j
>
>
> For batch processing probably something more sophisticated would
> be needed to leave various environments unchunked. But I don't use
> it that way, and just apply it to selections where I know its use
> makes sense. Usually these are areas where I have just been doing
> a lot of rewriting.
>
> There's no point in chunking up commented material, and sometimes
> it is actually convenient to have a place where I can keep things
> unchunked for reference.
>
> The original chunk command in Writer's Workbench [2], for troff not
> latex, was based on a parser for English, I think. I find I don't
> want that (because I write in other languages as well), and that
> even in English I don't need it (because the chunking based on
> interpunction is always fine with me, and where I care about the
> remaining cases, I prefer to do it myself; but see [3]).
>
> Mark.
>
>
> [1] http://rhodesmill.org/brandon/2012/one-sentence-per-line/
>
> [2] http://man.cat-v.org/unix_WWB/1/chunk
>
> [3] https://github.com/waldir/semantic-linebreaker
>
>
[-- Attachment #2: Type: text/html, Size: 4053 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-04-04 12:16 ` Bence Fábián
@ 2013-04-04 12:28 ` erik quanstrom
2013-04-04 13:01 ` Bence Fábián
0 siblings, 1 reply; 18+ messages in thread
From: erik quanstrom @ 2013-04-04 12:28 UTC (permalink / raw)
To: 9fans
On Thu Apr 4 08:17:13 EDT 2013, begnoc@gmail.com wrote:
> Cool.
>
>
> Here's a script i use to generate case
> insensitive regexes. It turns
>
> FooBar
>
> into
>
> [Ff][Oo][Oo][Bb][Aa][Rr]
see also rune(1), http://9atom.org/magic/man2html/1/rune
which generalizes this idea to all of unicode (rune/case),
and also to diacritical and other markers (rune/fold; rune/unfold).
for the latter also see grep(1)'s -I flag, http://9atom.org/magic/man2html/1/grep
- erik
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-04-04 12:28 ` erik quanstrom
@ 2013-04-04 13:01 ` Bence Fábián
2013-04-04 13:04 ` [9fans] Acme script request (was: Acme Edit scriptlets) dexen deVries
2013-04-05 12:32 ` [9fans] Acme Edit scriptlets David Arroyo
0 siblings, 2 replies; 18+ messages in thread
From: Bence Fábián @ 2013-04-04 13:01 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
[-- Attachment #1: Type: text/plain, Size: 607 bytes --]
whoa. nice job.
2013/4/4 erik quanstrom <quanstro@quanstro.net>
> On Thu Apr 4 08:17:13 EDT 2013, begnoc@gmail.com wrote:
>
> > Cool.
> >
> >
> > Here's a script i use to generate case
> > insensitive regexes. It turns
> >
> > FooBar
> >
> > into
> >
> > [Ff][Oo][Oo][Bb][Aa][Rr]
>
> see also rune(1), http://9atom.org/magic/man2html/1/rune
> which generalizes this idea to all of unicode (rune/case),
> and also to diacritical and other markers (rune/fold; rune/unfold).
> for the latter also see grep(1)'s -I flag,
> http://9atom.org/magic/man2html/1/grep
>
> - erik
>
>
[-- Attachment #2: Type: text/html, Size: 1253 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* [9fans] Acme script request (was: Acme Edit scriptlets)
2013-04-04 13:01 ` Bence Fábián
@ 2013-04-04 13:04 ` dexen deVries
2013-04-04 13:17 ` Bence Fábián
2013-04-05 12:32 ` [9fans] Acme Edit scriptlets David Arroyo
1 sibling, 1 reply; 18+ messages in thread
From: dexen deVries @ 2013-04-04 13:04 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
an Edit script, or an Rc script for Acme, to close all windows which names
start with given (literal) prefix.
use case: several files and directories of two projects open in one Acme
instance. want to close all windows related to one of the projects, and leave
the other project's windows open.
--
dexen deVries
[[[↓][→]]]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme script request (was: Acme Edit scriptlets)
2013-04-04 13:04 ` [9fans] Acme script request (was: Acme Edit scriptlets) dexen deVries
@ 2013-04-04 13:17 ` Bence Fábián
2013-04-05 12:35 ` Martin Kühl
0 siblings, 1 reply; 18+ messages in thread
From: Bence Fábián @ 2013-04-04 13:17 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
[-- Attachment #1: Type: text/plain, Size: 580 bytes --]
for (dir in `{grep -l '^'$pattern /mnt/acme/[0-9]*/tag | sed 's/tag//'}){
echo delete >$dir/ctl
}
where $pattern is the pattern you want to match
2013/4/4 dexen deVries <dexen.devries@gmail.com>
> an Edit script, or an Rc script for Acme, to close all windows which names
> start with given (literal) prefix.
>
> use case: several files and directories of two projects open in one Acme
> instance. want to close all windows related to one of the projects, and
> leave
> the other project's windows open.
>
> --
> dexen deVries
>
> [[[↓][→]]]
>
>
>
[-- Attachment #2: Type: text/html, Size: 1089 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme Edit scriptlets
2013-04-04 13:01 ` Bence Fábián
2013-04-04 13:04 ` [9fans] Acme script request (was: Acme Edit scriptlets) dexen deVries
@ 2013-04-05 12:32 ` David Arroyo
1 sibling, 0 replies; 18+ messages in thread
From: David Arroyo @ 2013-04-05 12:32 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
[-- Attachment #1: Type: text/plain, Size: 1114 bytes --]
I took the template.awk script from werc[0] and use it in acme all the
time. I've a collection of template files beginning with
Edit ,|tpl
% var1=val1
% var2=val2
...
I can execute line 1 to generate stuff like Makefiles, man pages, puppet
manifests, etc.[1]
[0]: http://hg.cat-v.org/werc/file/50a9b770bb43/bin/template.awk#l1
[1]: http://aqwari.us/notes/werctpl
On Thu, Apr 4, 2013 at 9:01 AM, Bence Fábián <begnoc@gmail.com> wrote:
> whoa. nice job.
>
>
>
> 2013/4/4 erik quanstrom <quanstro@quanstro.net>
>
>> On Thu Apr 4 08:17:13 EDT 2013, begnoc@gmail.com wrote:
>>
>> > Cool.
>> >
>> >
>> > Here's a script i use to generate case
>> > insensitive regexes. It turns
>> >
>> > FooBar
>> >
>> > into
>> >
>> > [Ff][Oo][Oo][Bb][Aa][Rr]
>>
>> see also rune(1), http://9atom.org/magic/man2html/1/rune
>> which generalizes this idea to all of unicode (rune/case),
>> and also to diacritical and other markers (rune/fold; rune/unfold).
>> for the latter also see grep(1)'s -I flag,
>> http://9atom.org/magic/man2html/1/grep
>>
>> - erik
>>
>>
>
[-- Attachment #2: Type: text/html, Size: 2342 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme script request (was: Acme Edit scriptlets)
2013-04-04 13:17 ` Bence Fábián
@ 2013-04-05 12:35 ` Martin Kühl
2013-04-05 12:50 ` dexen deVries
0 siblings, 1 reply; 18+ messages in thread
From: Martin Kühl @ 2013-04-05 12:35 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
or using 9p(1):
for (num in `{9p ls acme | grep '^[0-9]'}) {
if (9p read acme/$num/tag | grep -s '^'$pattern)
echo delete | 9p write acme/$num/ctl
}
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [9fans] Acme script request (was: Acme Edit scriptlets)
2013-04-05 12:35 ` Martin Kühl
@ 2013-04-05 12:50 ` dexen deVries
0 siblings, 0 replies; 18+ messages in thread
From: dexen deVries @ 2013-04-05 12:50 UTC (permalink / raw)
To: Fans of the OS Plan 9 from Bell Labs
On Friday 05 of April 2013 14:35:58 Martin Kühl wrote:
> or using 9p(1):
>
> for (num in `{9p ls acme | grep '^[0-9]'}) {
> if (9p read acme/$num/tag | grep -s '^'$pattern)
> echo delete | 9p write acme/$num/ctl
> }
thanks, this version supports using two Acmes, each in separate namespace :-)
--
dexen deVries
[[[↓][→]]]
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2013-04-05 12:50 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-29 0:38 [9fans] Acme Edit scriptlets Bence Fábián
2013-03-29 1:19 ` phineas.pett
2013-03-29 8:22 ` Peter A. Cejchan
2013-03-29 8:20 ` dexen deVries
2013-03-29 8:25 ` Peter A. Cejchan
2013-03-29 8:48 ` dexen deVries
2013-03-29 9:50 ` Richard Miller
2013-03-29 16:20 ` Skip Tavakkolian
2013-04-04 10:19 ` Mark van Atten
2013-04-04 12:08 ` dexen deVries
2013-04-04 12:16 ` Bence Fábián
2013-04-04 12:28 ` erik quanstrom
2013-04-04 13:01 ` Bence Fábián
2013-04-04 13:04 ` [9fans] Acme script request (was: Acme Edit scriptlets) dexen deVries
2013-04-04 13:17 ` Bence Fábián
2013-04-05 12:35 ` Martin Kühl
2013-04-05 12:50 ` dexen deVries
2013-04-05 12:32 ` [9fans] Acme Edit scriptlets David Arroyo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).