Project

General

Profile

[Script] List all Emoticon triggers in Menubar

Added by Per Amundsen almost 8 years ago

List all Emoticon triggers in Menubar

Requires AdiIRC 2.7+.

2018/06/30

Fixed an error when reloading the script
Fixed an issue with $menucon file path

Script

on *:start:{
  if (!$menunbar(emoticons)) {
    menubar -a emoticons @emoticons Emote
  }
}

menu @emoticons {
  $submenu($listemoticons($1))
}

alias -l listemoticons {
  ; Show icons using the new $menuicon identifier
  if ($emoticons($1)) {
     return $menuicon($qt($emoticons($1).file)) $emoticons($1) $+ :editbox -ai $emoticons($1)
  }
}

Replies (4)

RE: [Script] List all Emoticon triggers in Menubar - Added by Roman Macuda almost 8 years ago

Nice work.. but, (I'm not a software developer so maybe it's obvious) is there any limitation of entries ? In my case (ca 600 emots installed) only part of them are available in menu and list is descending.

Regards
Roman

RE: [Script] List all Emoticon triggers in Menubar - Added by Per Amundsen almost 8 years ago

There is a max of 250 $submenu items, it is possible to call $submenu several times with some parameters, but I question the purpose of showing 600 menu items.

For descending, something like this should work:

alias -l listemoticons {
  return $calc($emoticons(0) - $emoticons($1)) $+ :editbox -ai $calc($emoticons(0) - $emoticons($1))
}

RE: [Script] List all Emoticon triggers in Menubar - Added by westor (GR) over 6 years ago

There is an faster method.

alias -l listemoticons {
  ; Show icons using the new $menuicon identifier
  if ($emoticons($1)) { return $menuicon($qt($emoticons($1).file)) $v1 $+ :editbox -ai $v1 }
}

RE: [Script] List all Emoticon triggers in Menubar - Added by westor (GR) over 1 year ago

After a break report i fixed a bug and the new version is:

alias -l listemoticons {
  ; Show icons using the new $menuicon identifier

  if ($istok(begin end,$1,32)) { return - }
  if ($emoticons($1) !== $null) { return $menuicon($emoticons($1).file) $1 $+ $chr(42889) $replace($v1,$chr(58),$chr(42889)) $+ :editbox -ai $v1 }
}
    (1-4/4)