^ : Control key
meta : Alt key

From personal use

  • use -ssl option before the server name and port
    • e.g. /connect -ssl 6697
  • checking which uses GNU aspell
    • not tried yet
  • /quote servercommmand parameter
  • message levels
  • /trigger add -regexp 'Thanks|thanks|thank you|Thank you|merci|Merci' -command 'echo You would do the same for me. (by Guy Kawasaki)
  • move windows around (similar to my Vimperator binds
    • /bind meta-{ command window move left
    • /bind meta-} command window move right
  • /alias Xsearch /say X_URL?action=search&q=$0 : provides a link to search through website X
  • activities aliases
    • /alias read /away reading; set activity_hide_level all; exec screen -X select reading; : sets away status and jumps to a specific window
    • /programming
    • /documenting
    • /alias stopcurrenttask /set -c activity_hide_level; away;
    • to log with timestamps
  • /calc 40*37.5 : returns 40*37.5=1500.0
  • ^T : transpose_characters
    • note that those text edits are coherent with Bash (cf Shell)
  • ^K : erase_to_end_of_line
  • meta-b : backward_word
  • meta-f : forward_word
  • meta-d : delete_next_word
  • meta-Delete : delete_previous_word
  • /lastlog -clear : remove the result of lastlog
  • /bind : to create keyboard shortcuts for commands (including aliases)
  • meta-[0-9a-zA-Z] : jumps to the nth window
  • down arrow : to type a new sentence (stacking)
    • up arrow : to go back in history without having to /echo in order to keep a sentence in memory!
  • /lastlog : manipualte the log of the current window
    • /lastlog -file ~/public_html/logs/filename.txt : save in the indicated file
    • /lastlog -regex Utopiah.*http : search the indicated regular expression
  • /set activity : to see the list of activity related parameters (see settings documentation for details)
  • /alias neuf /timer add neuf_deconnection 7000 0 /echo Attention ------- deconnection imminante (~3min) ------------ : creating an alias for a timer launch every ~2 hours warning that the reconnection should happen soon
  • ^y: paste cut content from C^left, C^u, ...
  • /id : alias for /q nickserv identify $0

From "Irssi proxy usage"

  • basically setting up a proxy to remotely control a running irssi instance

That was tried in order to paste content from Vimperator to irssi (tried with AutoHotKeys instead)

From "Startup HOWTO"

Binding /away to /tweet

  • limited to predefined ones?
  • bitlbee/twirssi

Timezone per person

  • set of aliases
    • tny /exec - TZ=America/New_York date
    • List of zoneinfo time zones value of TZ environment variable, on Wikipedia
    • apply a command each time a specific person opens a PM with me or I open a pm with them
  • example
    • X from NY opens a private window
    • /tny is executed
  • potential solution
    • trigger by Wouter Coekaerts
    • /trigger add -privmsgs -masks 'Hivemind*!' -regexp '^' -command '/tbr'

Exploiting logs for social behaviors

  • behavior_pattern=hello; person=paul; tail -20000 ~/irclogs/network/$person.log | grep -i $behavior_pattern | grep -i $person | sed "s/:.*//" | sort -n | uniq -c | sort -n -r | head -3
    • returns 8 14, 6 15, 3 22
      • meaning 8 times hello at 2pm, 6 times at 3pm and 3 times at 10pm
      • consequently one should expect the next first greeting of the day to happen between 2pm and 3pm
    • explanations
      • tail is used to keep the data fresh, as behavior tend to change over time
      • sed is used to just keep the hour
      • sort, uniq and and head are used to make the distribution and only keep part of it
      • note that behavior pattern is a "signature" thus has to be at the time significant and unique
        • used most of the time in that situation and in that situation only
        • it could be completed by a counter-pattern
          • technically using grep -v
    • improvements
      • generate triggers to be warned ahead of time that an event is likely to occur soon
        • pull out their profile (e.g. Person:X) few minutes before the expected interaction

See also Person

Note for a friend

  • next time friend say sth to me, the note is displayed locally
  • if I think about sth for you and you are not here but Id rather discuss it live, I just add a note
  • /alias note trigger add -once -privmsgs -masks '$0*' -command 'echo $1-'
    • improved with /alias tnote exec echo \$(date -R) $0 $1- >> ~/sharedlinks; trigger add -once -privmsgs -masks '$0*' -command 'echo -level hilight -window &bitlbee $0 -> $1-' which adds the triggers to a specific file that get dispatched to Person
    • actually rename the initial version to snote for "silent note"

Calendar notification

  • /timer add deletetorrent 70000 /echo Attention ---- delete the torrented file in the buffering folder ----
    • using the timer plugin to set a warning in the future once and Wolfram|Alpha to check the timing is right (here ~20hrs)
  • interfaced with only calendar so when X joins and X is in my calendar
  • output the note+URL
  • see also learning notes on bitlbee

Dynamic ignoring

section 10. ignoring Cf voting/talking experiment (cf proposition in of the 13th of April 2010) , talking with credit. Every time you post a sentence to the channel you spend 1 credit per word. Everybody in the channel can then vote your sentence up or down. For votes up you earn a % of credits, for down you loose a %. If you have 0 credit you have to wait a certain amount of time to get some. You vote on the X last messages including * for all or a data (from now to then).


wonders how ignore could make use of logs and eventually dynamically ignore on topics (from keyword) or groups of people (nicknames and adress)

11:02 < Utopiah> leth: sure, ignore on irssi supports regex so I guess doing stats on logs shouldn't be hard, would just have to issue a command saying "that line was bad" a sufficient amount of time (but you can set a threshold level)
11:02 < Utopiah> actually we could use bayesian filters if we do it a a group, like Gmail spam
11:04 < leth> Utopiah: yeah, might be a good idea.. but you'd want to know when it activates incase it does something it shouldn't do..
11:05 < Utopiah> leth: right, keeping logs of what it hides and review it periodically and change the threshold, eventually adding a whitelist
11:07 < Utopiah> leth: since the amount of crap on the net, I tend to think investing some time on it could be valuable :-#
11:07 < leth> Utopiah: yeah, i thought realtime notification when it hides something, but yeah, also logs so you can review it.. good idea. and a whitelist also a good idea.
11:08 < Utopiah> leth: problem with notification is that it gets your attention when most of the time you precisely don't want to waste it :/ but yes it's safer, could just replace by ****** for example but that would make you curious, wouldn't it?
11:08 < leth> Utopiah: it is sad that the internet is turning ignorance into such a well practiced technique..
11:09 < leth> Utopiah: just something like "username has been ignored. to review logs use command /ignorelog"
11:10 < leth> Utopiah: i'd rather read that then whatever caused the ignore..
11:11 < Utopiah> right, I think that also what could be done is a exponentially long "reset" period, i.e. you ignore by default for X minutes then each time you have to reignore you don't just ignore for the same time but by a multiple of the previous amount
11:14 < Utopiah> leth: idea was also to be flexible enough, for example I don't want to ignore you but when you talk about somebody Im ignoring, I shouldn't see your sentence

Last chats recovery across different networks

  1. group nicknames
  2. activate irssi logs
  3. check date
  4. print in the newly opened window with contact Y the last X lines from logs

Inspired by Simon.

See also


My notes on Tools gather what I know or want to know. Consequently they are not and will never be complete references. For this, official manuals and online communities provide much better answers.

GreenMarinee theme adapted by David Gilbert, powered by PmWiki