Another #mastodonel / #emacs newbie question:
When the cursor is on a post in one of the timelines is there a way to quickly open/expand the post's thread in another buffer window instead of expanding the thread in the current buffer window?
My current strategy is to duplicate the current timeline buffer window using C-x 2 then switching to the second window using C-x o then pressing the thread command T. Is there a better way to speed that up with less commands? Maybe a macro? #askemacs
Any #emacs gurus able to get mastodon.el running? I was able to add my mastodon-instance-name and my user id as mastodon-active-user to my ~./.emacs file, and opening m-x mastodon generates this in my messages (and I see a ~/.emacs.d/mastdon.plstore file created):
Contacting host: mastodo.neoliber.al:443
Saving file /home/.../.emacs.d/mastodon.plstore...
Wrote /home/.../.emacs.d/mastodon.plstore https://mastodo.neoliber.al/oauth/authorize/?response_type=code&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&scope=read%20write%20follow&client_id=...
@Neblib I've been using it for many months. Setting mastodon-instance-url (not ...-name!) and mastodon-active-user is all you should need.
If that doesn't do it make sure that it's a reasonable recent version of mastodon.el and not something unexpectedly ancient.
Also, looks like the instance you mention in the error is a forked version (v4.3.0-alpha.3+chuckya). That's normally not a big deal but might be worth trying against a vanilla instance to be sure. #mastodonel
any emacs geeks know how to render an emoji in a completion-at-point function (annotation)? i added emoji completion on : for mastodon.el, but never worked out how to show the emoji next to its name.
How is this very post licensed and how would you know? Do #Mastodon instances dictate a #license on users posts? Is there a way for me, the #author, to assign one and pass the information through the #fediverse? Do I give away my #copyright in the moment, I press on "Publish!" below? (Or press C-c C-c in #Emacs#mastodonEl?) Can I limit #distribution e.g. to notforprofit entities? (Not that I wanted to. At least not now.)
@rahguzar@mykhaylo Thanks for the suggestions! Still am figuring out how #mastodonel works. The tokens (of multiple accounts) are stored in a plist file (mastodon.plstore). In this file it is also noted which account is active. The active account can be changed via mastodon-client--make-current-user-active. But somehow the old token is still active and is used somewhere in mastodon.el. Sorry for all the boring details.
@laotang@mykhaylo I also am not too familiar with the #mastodonel codebase, but my guess would be that the file is read once when you load Emacs. For run time it is probably irrelevant and you need to set #elisp variables. mastodon-client--make-current-user-active seems to just save these variables for the next session.
@petealexharris@gwynnion@michaelgemar@futurebird@adriano I have that to a slightly limited extent: I use #Emacs for almost all my computer-related needs (I'm typing this into #MastodonEl, a Mastodon client running inside Emacs; I use it for all my writing, including emails, reports, papers, my website, etc.; I used to use it to mark up my student's theses —but now prefer to use a tablet so I can scribble on them by hand— an lots of other stuff, too, basically everything but browsing websites that truly need JavaScript). In Emacs I can ask what any key combination is called and what it is currently programmed to do in Emacs, and I can change the definition if I want.
For example, the Mastodon client I use lets me start a new post by pressing t (for toot) from the timeline view. But I noticed that I often get an idea for a Mastodon post when I'm not reading Mastodon, so I assigned a new combination to start a post from anywhere in Emacs, even if I'm not viewing the timeline. I have key bindings to go my email inbox, to compose a new message from anywhere, etc.; and I personally chose these key combinations. I'm on a Chromebook which has a nice reload key with a circular arrow. Emacs tells me the key is called <XF86Reload> and I've assigned it to reload the current file from disk or to refresh a computed view (refreshing Mastodon, for instance).
I said "slightly limited extent" at first because some keys and key combinations get trapped by the operating system before Emacs gets a chance to see them. ☹️
I am using #mastodonel and org-capture in #emacs to save interesting toots. To catch the title of the toot's webpage, I am also using #org-web-tools. Both packages have recently changed a bit, breaking my previous hacks.
#Emacs#mastodon would be a lot nicer if it obeyed the same auto-fill margin as every other emacs mode. Anyone know if there's a fix for this? I can toggle auto-fill, but this one mode insists it knows better.
Is there a #Mastodon client of some kind where I'm able to define rules like: "show me messages of account X with a delay of 24 hours and omit everything with leas than 12 boosts" (for a set of accounts and different settings per account of course) and maybe also offers scoring by rulesets based on regular expressions?
@gnomon@publicvoithttps://docs.joinmastodon.org/methods/accounts/#request-4 has the details of the currently available parameters for account statuses, with only max_id/min_id/since_id options being related to time period (they're used for pagination). but as you can see they are id-based, not time-based.
a client could cook something up by fetching a lot of statuses, then checking their "created_at" fields, but mastodon.el doesn't try to do anything like that. ditto with boost numbers and scoring. with the server not really being designed that way, it'd be a lot more work (and i think a lot slower) for a client to implement such features. i also don't think such features are a priority for the devs of the main masto server, though it's possible that glitch or a similar fork might work on them.
On joining the #Fediverse, of which Mastodon is just a part, the first thing to do is not follow people but fill your profile in . Doesn't have to be 5,000 words, just 4 or 5 hashtags about things you like, then over time look at other peoples profiles & add to yours
A lot of people block or mute empty profiles here so get that profile started.
#Feditips is a good tag to search for help just after joining
"Only a tiny part of written text is printed on paper, so the What You See is What You Get (WYSIWYG) approach does not make much sense in the digital age. Plain text uses the What You See Is What You Mean (WYSIWYM) approach. "
And, as an aside, one the most underrated features of #evilmode in #Emacs is that there is a complete (almost?) implementation of #ex under the hood, accessible via the : key binding (as in #vi).
And the combination of Emacs, evil mode, and #mastodonel is unbeatable for interacting with the #fediverse. 🙃
Not sure if I love it or hate it, but trying out recentering after going to the next toot in #MastodonEl for #emacs. Will probably modify to "if last visible toot".
i pushed the performance fix to main. it should propagate to ELPA/MELPA soon. seems to make things 2-3 times faster (well, tested just on my cpu), or poss even more, lulz. sorry for all the years of sluggishness!
i suspect there will still be a few issues, with mode-hook, with emojify/custom emojis, but from my testing they may
well have preexisted the fix.
so if e.g. custom emojis are broken in your compose buffer (before or after updating), let me know.
@alexlehm some eminently bookmarkable people have their posts set to autodelete. Save the threads somewhere permanently inside your emacs via #MastodonEl ?
I'm getting an impression that the usual #mastodon advice of following hashtags is an attempt to replicate the algorithmic feed of #Twitter without its benefits. Meaning, it's an attempt to boost discoverability of toots/discussions/people you might be interested in. But, it's impossible to catch up with everything posted under a hashtag, and interesting toots are buried under the piles of irrelevant (for you) stuff.
@yeti At the risk of pointing out what you already know: in #mastodonel you can press T on a toot and it will open a thread (like this one) with the older posts at the top :)
I cannot understand the global timeline either. But at least I'd like my home timeline neat :) Regarding hashtags, my previous toot was about exactly that: it's too noisy. Maybe I should block more accounts though...
The mastodon.el dev @mousebot added a feature to highlight the toot at point. So far I'm loving it. It make it much easier and very intuitive to know the boundaries of each toot. give it a try by
(setq mastodon-tl--highlight-current-toot 1)
There is a known glitch that affects highlight when favorite/boost a toot, but it is known and being worked on.
#emacs#doom#doomemacs Doom emacs users, do you know if anyone has written an #evil layer for #mastodon mode via #mastodonel? The mode is amazing but there doesn't seem to be an official keybind layer/module in doom for it so I'm having to switch back and forth between vim style and emacs style.
@glitzersachen@publicvoit i could possibly help out. using what i learned with mastodon.el, i've working on lem.el, and i deliberately built a separate api layer (lem-api.el) that could be used to build any frontend, as lemmy/emacs-ers were suggesting about 10 different frontends that they wanted. perhaps it wouldn't be too hard to extract out a similar layer from mastodon.el, as lem-api.el sits atop what is basically mastodon.el's http layer. (wouldn't be too hard -- famous last words, but hey.) the problem is that i don't (know how to) use gnus.
Build your own #TweetDeck with #Emacs... as a split frame, where every window has a buffer with one of #mastodonel's timelines, tags etc. Leveraging Emacs' abilty to further split w a window hichever way one might prefer. I set this as a seperate tab, to which I can switch when I need to.
Drafting and researching in emacs, while tooting or searching from the same UI, is incredibly efficient. The second screenshot shows #emacsdoom's built-in lookup service used to search the thing-at-point/selection from within a mastodonel buffer, as I would from any buffer.