aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-07-12Remove utf8 (it is now used by xtopen by default)John Ankarström
2021-07-05xchord: Improve button press/release orderJohn Ankarstrom
2021-07-04Call chdir in function(call handlerJohn Ankarstrom
2021-07-04Fix file path bugJohn Ankarstrom
2021-07-03Handle man pages with periodsJohn Ankarstrom
2021-07-02Handle man.section as fileJohn Ankarstrom
2021-07-02xchord: Use vfork + exec instead of systemJohn Ankarstrom
2021-07-02Add git status handlerJohn Ankarstrom
2021-07-01xchord: Block until eventJohn Ankarstrom
Otherwise, xchord takes up 100% of the CPU.
2021-07-01xchord: Run dwim on key releaseJohn Ankarstrom
Otherwise, the X selection won't have time to update!
2021-07-01Add xchord utilityJohn Ankarstrom
2021-06-30Open vi with UTF-8 encodingJohn Ankarstrom
2021-06-29Don't open vi with ISO8859-1 encodingJohn Ankarstrom
I've set LC_ALL elsewhere.
2021-06-29Handle optional colon after manual.sectionJohn Ankarström
2021-06-29Open vi with ISO8859-1 encodingJohn Ankarström
2021-06-19Improve function(call handlerJohn Ankarström
2021-06-19Fix use subs declarationJohn Ankarström
2021-06-19Sort subroutine definitions alphabeticallyJohn Ankarström
2021-06-19Fix dirname()John Ankarström
This bug had the side-effect of the chdir in path() failing.
2021-06-19Fork and exec instead of calling the shellJohn Ankarström
This handles whitespace in arguments properly.
2021-06-15Improve diff header handlerJohn Ankarström
2021-06-15Improve 'path' subroutineJohn Ankarström
2021-06-15Handle diff -u headersJohn Ankarström
2021-06-15Support apropos(1) outputJohn Ankarström
2021-06-15Open directories in ROX FilerJohn Ankarström
2021-06-08Handle function(callJohn Ankarström
2021-06-07stuffJohn Ankarström
2021-06-06Install in /usr/local/binJohn Ankarstr\xf6m
2021-06-06Support ~home directoriesJohn Ankarstr\xf6m
2021-06-06Dynamically search include directories for header filesJohn Ankarstr\xf6m
2021-06-01Fix missing dirname function, handle 'manpage.section'John Ankarstr\xf6m
2019-10-23xbps package supportJohn
2019-06-08change names of handlersJohn
2019-06-08add handler for <header.h> notationJohn
2019-06-08disallow spaces in urls and e-mail addressesJohn
Technically, spaces are permitted in e-mail addresses if quoted, but this is very uncommon.
2019-06-08allow trailing , or . in manpage(section) regexJohn
2019-06-08allow more trailing characters in file:line regexJohn
2019-06-06add handler for man(section) notationJohn
2019-06-04run() subroutineJohn
`run` is basically an alias for `exec`, except it prints the command being executed to STDERR when the -d option is specified.
2019-06-04rename handlersJohn
2019-06-04fix http/mailto regexesJohn
2019-06-04formattingJohn
2019-06-03manual (wip)John
2019-06-03rename dwim.pl to dwimJohn
2019-06-03delete dwim symlinkJohn
2019-06-03support perl-like file + line referencesJohn
2019-06-03argument support (-d for debug)John
To facilitate debugging, I've reified the handler descriptions, which were comments previously. Now, they've been made strings passed to the `handle` subroutine, which sets `$handler`, which then (in case of -d) can be read by `fail`, which notifies the user that a handler has failed.
2019-06-01env subroutine: simpler default assignmentJohn
2019-06-01simple makefile for myselfJohn
2019-06-01dwim.plJohn
This is the Perl version of dwim. It is much easier to work with and extend, thanks to Perl's excellent regex support. The "phrase" (either $ARGV[0] or the primary X selection) is matched against regular expressions in the for loop (a primitive switch statement). This is the place to add handlers. Options are specified through environment variables, defined with default values in the section before the handlers. The `path` subroutine transforms a relative path to an absolute path based on the title of the current window. It depends on the `xtitle` program, and for it to work, you must instruct your shell (or editor) to set the terminal's title to the current directory (or currently edited file). (As such, `path` doesn't work with other programs than terminals and editors.)