about summary refs log tree commit diff
path: root/Makefile (unfollow)
Commit message (Collapse)Author
2020-11-24Split /exec lines by \r as well as \nJune McEnroe
This fixes local rendering of /exec toilet --irc, which outputs \r\n line endings.
2020-11-11Add topic diffing to notable features 1.3June McEnroe
2020-11-08Use wmemcpy/wmemmoveJune McEnroe
2020-11-08Remove static buffer from colorMentionsJune McEnroe
2020-11-08Remove static buffer from capListJune McEnroe
2020-11-08Highlight changed portion of topicJune McEnroe
"%.*ls" is useless.
2020-10-12Avoid eating C-c while connectingJune McEnroe
Split UI initialization into two steps either side of the call to connect, so that C-c works as interrupt while it's blocked.
2020-10-09Clear wrapping point at alignment tabJune McEnroe
This fixes odd wrapping when a nick contains a hyphen and there are no further wrapping points.
2020-10-09Strip formatting from URLsJune McEnroe
Notably this fixes opening URLs from litterbox queries where part of the URL is highlighted.
2020-10-09Factor out styleStripJune McEnroe
2020-10-02Double up /help for server helpJune McEnroe
While the automatic search via LESS is neat, I don't think it's very useful. Just always open the manual to the COMMANDS section, and fix it to append to LESS rather than replace it.
2020-09-30Use WHO for /opsJune McEnroe
Accumulate names in a buffer and show away status.
2020-09-30Add /ops commandJune McEnroe
It's pretty awkward with large channels since NAMES isn't sorted by prefixes or anything... But having it accumulate names across many replies would require more reworking.
2020-09-18Allow 2-param form of /whois, count comma-separated nicksJune McEnroe
I do not feel like documenting the 2-param form of /whois because it is weird, but it should work for those who already know about it.
2020-09-18Switch back to checking for server by nick with '.'June McEnroe
This fixes a bug where if you send a private message before joining any channels, your message will be routed to the <network> window. That happens because without a JOIN, self.user remains unset, which means that require will copy self.nick (set by echoMessage) to self.host. The easiest solution is to go back to checking for '.' and add a '.' to the default nick, so now if a server sends a NOTICE with no origin it will look like -*.*- which is kinda cute.
2020-09-11Copy style from wrapping pointJune McEnroe
This fixes a bug when wrapping on a word with style changes inside it, where the copied style would be different depending on the width of the terminal.
2020-09-09Silence set-but-unused warning 1.2June McEnroe
getyx is so annoying this way.
2020-09-08Include DEL in characters ncurses will print in ^A formJune McEnroe
2020-09-07Add blank line to unread if there are already unreadJune McEnroe
This fixes the inconsistent M-u behaviour when catgirl is restarting and reconnecting to pounce, for example.
2020-09-07Call uiWrite to insert blank linesJune McEnroe
It only used to use different code to avoid adding the blank line to the soft buffer.
2020-09-07Let wrapped lines use the last columnJune McEnroe
2020-09-06Handle non-alignment tabs in line wrappingJune McEnroe
2020-09-06Add C-r, C-s for basic scrollback searchJune McEnroe
2020-09-03Add M-n, M-p to jump to highlightsJune McEnroe
2020-09-03Fix M-u behaviour difference before and after reflowJune McEnroe
2020-09-02Recalculate unreadHard on reflowJune McEnroe
2020-09-02Give blank lines timestampsJune McEnroe
Otherwise the zero timestamps totally break save data loading! Bad!
2020-09-02Hide ignored messages at the soft -> hard buffer layerJune McEnroe
This restores normal scrolling behaviour.
2020-09-02Don't call completeTouch for ignored messagesJune McEnroe
2020-09-02Preserve style after alignmentJune McEnroe
This makes wrapping text with background colour look much better.
2020-09-02Still add ignored lines to unreadHardJune McEnroe
Scrolling is still affected by hidden lines (which I'm not sure yet is good or not), so for M-u to work it needs to count ignored lines.
2020-09-02Actually insert blank lines in the soft bufferJune McEnroe
So they can be preserved forever!
2020-09-02Reimplement split scrollingJune McEnroe
2020-09-02Fix inserting blank lines BEFORE the new messageJune McEnroe
2020-09-02Only call windowUpdate when the shown window needs updatingJune McEnroe
2020-09-02Don't consider the alignment tab a wrapping pointJune McEnroe
2020-09-02Call wclear on resizeJune McEnroe
Otherwise artefects can appear when resizing to smaller width with wide characters at the right edge of the window.
2020-09-02Fix line wrapping in various waysJune McEnroe
Never split a codepoint, don't set wrapping point unless we're not already wrapping, wrap on any unicode whitespace, only clear rest of line if still on the same line...
2020-09-02Render one main window from buffersJune McEnroe
Still missing: split scrolling and preserving a blank on reflow either from resize or ignore toggling. Anecdata: on one of my instances of catgirl, RAM usage of the previous release was ~30M, RAM usage of this commit was ~12M.
2020-09-01Implement buffer line wrappingJune McEnroe
Not yet rendered in the UI! Just done in parallel.
2020-09-01Invert meaning of unreadHard/unreadSoft to match new buffer codeJune McEnroe
Not sure why I had named them this way. Hard means hard-wrapped.
2020-09-01Factor buffer out of uiJune McEnroe
In preparation for doing line wrapping outside of ncurses.
2020-09-01Move styleParse out of uiJune McEnroe
2020-08-21Use a static buffer for base directory pathsJune McEnroe
2020-08-20Document how cert/priv are searched forJune McEnroe
This has always been how it works, but it was previously undocumented.
2020-08-20Use configPath to load TLS cert/privJune McEnroe
2020-08-20Refactor base dir functions to iterate over pathsJune McEnroe
2020-08-18Match mentions case-sensitivelyJune McEnroe
The mention coloring code already matches case-sensitively, and any proper ping should be using tab-complete anyway so there's no reason for differing case. And the month of June should not ping me.
2020-08-18Preserve colon from previous tab-completeJune McEnroe
This fixes the case when pinging multiple nicks and one of them needs to be cycled through.
2020-08-16Set origin fields to "*" if missingJune McEnroe
Also determine if a message is from the server by if the host field has been copied from the nick field. EFNet sends NOTICEs with no origin during registration. RFC 1459 has this to say: > If the prefix is missing from the message, it is assumed to have > originated from the connection from which it was received. I suppose a more correct implementation would be to set the origin to the hostname of the server, but we don't store that globally, so this is good enough.