#๐พ-core-development
1 messages ยท Page 42 of 1
xD
dickriding vencord
that's insane
@turbid hatch yo buddy, do you want me to make a pr to push a github ci config for the backend repo? so u could build ur own officials images
not really bothered to build official ones
they're built on the server when needed and honestly self-hosting isnt really officially supported
its just an option
aight, fair enough
what would i need to modify in the messageactions plugin to make it doubleclick to reply instead of edit
i think i'm done with that shit 
(heavily abuse :has())
Enables the "Browse Channels" button at the top of the channel list for non-community servers (or servers where it's disabled if being a community server isn't required)
- Browse Channels, and individually enable and disable channels
- Add the "Show all channels" checkbox to the server context menu
I have not found a similar plugin for any other platforms.
i still wanna go ham with :has some day
wasnt a thing when i last did themeing ;w;
Adds a character counter to the chat box.
- Would start off displaying 2000 limit, even with Nitro, unless disabled with an active subscription.
- Would switch to 4000 once message is over 2000 if subscription is active, unless previous setting is disabled, in which case, it will always display 4000 when subscription is active
- Option to display characters typed, characters remaining, both at once, or swap automatically to characters remaining at a certain threshold.
- Would also funct...
it enables you to do so many new things it's awesome
Adds the ability to add/remove multiple cursors in the input box.
- Click somewhere in the input box while holding [ctrl] to add a new cursor.
- Click on a pre-existing cursor while holding [ctrl] to remove it.
- Clicking anywhere without [ctrl] being held will remove all cursors.
- A minimum of 1 cursor must exist, attempting to remove the last cursor will not work.
What's the purpose of this plugin?
The purpose of this plugin is to make it easier to edit a bunch of repeated text...
mhm i know
https://github.com/Vendicated/Vencord/discussions/727
i realllly want this to become actually real
guhh soon
nice
there will be compromises because my ass is not remaking entire react components
just so the message can stay if it gets deleted
something something patch message delete idk
i dont mind this, hell i can even use this as a alternative to screenshotting a message lol
my downfall is finding anything in discord code
also discord has been working on a message to-do experiment thingy magick
true.......
when was the last time discord released a non nitro feature
2 thousand years ago was it?
ok but
WYSI
If you do this and then enableStyle in start(), it will not apply unless the plugin is enabled
import style from "./index.css?managed";
can't u just dump the message object into DataStore then use it later
guh?
yes i agree
||all i can hear is the windows notification sound echoing in my mind||
can you even do that
last time i tried it cried about it
time to reproduce said error so im not called insane
god how is google so terrible
google is slo
takes 5 million years to approve extension updates so users have a terrible experience
i want to selfhost to solve this issue but "Linux is the only platform where Chrome users can install extensions that are hosted outside of the Chrome Web Store"
fuck you google
tell them to stop use google :P
Firefox isn't any better
true
at least they let you install self hosted extensions on any os https://extensionworkshop.com/documentation/publish/self-distribution/
Get help creating & publishing Firefox extensions.
this would be cool, I think having the ability to change discord notification sounds to custom mp3s like incoming call sound or outgoing call sound or mention sound would be a really good plugin
Just use the favorites experiment discord offers.
"blahblahblah could not be cloned" presumably because discord has 900 trillion things and functions on message object
anyways i had an idea how do you add shit to messagestore
actually i will abuse MESSAGE_CREATE 
just clean it 
I have it enable and barely use it because it's terrible compared to the Pin plugin.
Don't want to have to click an extra button to see those I added as favorite, then I might as well just keep using the normal list as they're not visible anyway unless you click that favorite button.
noppppp
oh clean is an actual function wait
if you need them again later, make a new message instance
no 
bye
i already do that kinda guh
just taking certain props from message and storing them but you need to remake to use Message react component
which takes stupit channel objects instead of ids so so limited explode
no shouldn't need to
you just need to make a message instance

I'll look in a bit
you mean this Message?
You're supposed to just use the fav tab exclusively, just add all channels you frequent in
funny i dont even use favorite experiment even though i have it on because clicking servers muscle memory
if so u should give find code cause trust me i tried before 
(i am stupid)
can plugin dev questions go here? if not where should they go
lol ok
im trying to use the node crypto library but it doesnt seem to work for plugins
its used in the updater though
is there any alternative
had this same issue with vendetta because it doesnt exist in hermes
cause plugins are browser
no node
yea i looked it that it doesnt have what I want
what do u want
what for
message encryption and decryption
function encrypt(text) {
const salt = randomBytes(8);
const block = randomBytes(16);
const pass = Buffer.from("0dc9820f1ab911688e9432c05c6b9dpublic", "utf-8");
const key = pbkdf2Sync(pass, salt, 30000, 16, "sha256");
const cipher = createCipheriv("aes-128-cbc", key, block, {});
cipher.setAutoPadding(true);
let n = cipher.update(text, "utf-8");
const final = cipher.final();
return (
(n = Buffer.concat(
[n, final],
n.length + final.length
)),
[
"ec2",
salt.toString("base64"),
block.toString("base64"),
n.toString("base64")
].join(".")
);
}
function decrypt(text) {
const spl = text.split(".");
const one = Buffer.from(spl[1], "base64");
const two = Buffer.from(spl[2], "base64");
const three = Buffer.from(spl[3], "base64");
const pass = Buffer.from("0dc9820f1ab911688e9432c05c6b9dpublic", "utf-8");
const key = pbkdf2Sync(pass, one, 30000, 16, "sha256");
const cipher = createDecipheriv("aes-128-cbc", key, two);
cipher.setAutoPadding(true);
let n = cipher.update(three, undefined, "utf-8");
return (n += cipher.final()), [n, "pubdef"];
}
"reversed" an older powercord plugin
https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/generateKey
https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues
Use the generateKey() method of the
SubtleCrypto interface to generate a new key (for symmetric algorithms)
or key pair (for public-key algorithms).
I want to make it compatible with the other versions, which is why I'm using the same stuff
I'll look thanks
how would I use SubtleCrypto
just window.SubtleCrypto ?

looks like its just self.crypto.subtle
self being window
Discord Account
No response
What is it that you'd like to see?
Vencord doesn't seem to have separate settings for each version of discord (stable, ptb, canary, etc.). It would be great if it did so. One particular use case I'm interested in is having separate themes for each client to better differentiate between the two of them.
Request Agreement
- [X] This is not a plugin request
i don't think this is a fix, react nodes won't have concat either
it does fix the problem though?

this is already possible by setting the VENCORD_DATA_DIR environment variable for each discord install
Implementing it as a native setting is not that simple, because where would you store the custom settings dir? you'd still need to store that in a common location
how do I change the content of a received message
took this part from another plugin but it doesnt change
just what i was trying, kind of :P
nvm got it to work, moved the fluxdispatcher call into the onmessage function
did you do FluxDispatcher.subscribe("MESSAGE_CREATE", this.onMessage)
that removes the 'this' context from the method so 'this' will refer to the global so this.updateMessage won't exist
your vencord is broken!
A plugin to propmt out a random femboy Picture
-Attribute in command (or maybe settings) to specify wether:
ยทPicture should be NSFW or not
ยทPicture should be sent silent
Vendetta Plugin:
https://sdhhhhh.github.io/vd-plugins/LoveFemboys
WHAT HAPPENED
you are leaving discord
your account will be deleted soon
god bless
"a blessing from the lord"
discord dum
can you fix dumb fake nitro emoji and stickers name param containing spaces @austere talon
just url encode
like &name=this stuped&blabla
I think I forgot to convert something
?
already fixed

didnt see it mb
ye
i was gonna comment on emojis but i realised they cant have spaces 
ye
freenitro users, what is this emojis name
trolleyzoom
what
lmao
how do yall get object object
im just messing
massive skill issue
anime girlfriend
ive never gotten object object
cuz we have nitro ven
its supposed to be anime girlfriend smh
Agree
and the pr fixing it kinda misses the point
real
that's why I didnt catch the error I think
it was when someone sent a sticker from a different server you werent in and freenitro rendered it as real sticker
someone send
uh
as I said
ven has nitro though
oh
anyway yeah
the reason it happens is because the code is like react node + "banana" but this only works if the node is a string
how fix
the pr uses .concat but that only works because it's an array and isn't robust
the correct fix is to wrap it
i love me some '[object Object]banana'
addInfoText(node: ReactNode) {
return [...(Array.isArray(node) ? node : [node]), " Your text"]
}
smth like this should work
remember that day discord rendered search result message contents as [Object object]?
I just realized this D:
Linux Moment
isnt there a #1032200195582197831 to hide them
oh you just dont have the fonts https://cdn.discordapp.com/emojis/1050794963409055814.webp?size=48&name=when&quality=lossless
WebExtError: Signing is still pending, you will receive an email once there is an update on the status of your submission. If you donโt see the email after 24 hours, please check your Spam folder.
at file:///opt/hostedtoolcache/node/19.8.1/x64/lib/node_modules/web-ext/lib/cmd/sign.js:143:13
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async Program.execute (file:///opt/hostedtoolcache/node/19.8.1/x64/lib/node_modules/web-ext/lib/program.js:263:7)
at async file:///opt/hostedtoolcache/node/19.8.1/x64/lib/node_modules/web-ext/bin/web-ext.js:13:1
why did mozilla and google both decide to start being cringe at the same time
I like being able to say: I use arch btw
lol
๐ค
both my computers use arch
...except my shitty school laptop
because a react node isn't limited to array & string
oh
it may also be a number, an object, or even null
using .concat might work but isn't very robust
right
WHY CAN IT BE NULL
to render nothing?
i- okay fair
shhhh
function Profile() {
const user = useAuthedUser();
if (!user) return null;
return <p>{user.name}</p>
}
is your inner manj*ro slipping through the cracks 
fix ur fonts immediately
by downloading megufont
send megufont
me when I don't install emoji font
can you send me a css snippet for megufont
never
megufont on google fonts when
@font-face {
font-family: "megufont";
src: url('https://meguminsama.github.io/megufont/Megufont-Regular.ttf');
}
thanks
good
@woeful sable luv you
fire
HORROR
fire
๐ค
๐ค
We might be able store it in the same folder as the discord install, but we can definitely store it within %appdata%/Vencord/settings and have separate folders for each version of discord similar to BetterDiscord.
We can start out with default folder names for recognized installations (stable, ptb, canary, etc.) and for custom installations we could either have a default generic folder name appended with an incrementing number and give the user an option in the settings to change it and...
The majority of people don't want separate settings for each branch, having shared settings across branches is a feature
it's not a limitation it's a feature

maybe add an option to customise the install path? that could be stored in discord's settings.json
In that case, we just need to give users the option to the change the settings folder from default if they wish.
Vencor Desktop
true
b4a2c41 VencordDesktop -> VencordDesktopNative; add Ven... - Vendicated
40f8fe0 Do not load renderer in preload in VencordDesktop - Vendicated
WebContextMenus (had no effect):
ID: 638525
Match: /(?<=showApplicationCommandSuggestions;)if\(![A-Za-z_$][\w$]*\.[A-Za-z_$][\w$]*\)/
WebContextMenus (had no effect):
ID: 638525
Match: /("submit-button".+?)(\(0,[A-Za-z_$][\w$]*\.jsx\)\([A-Za-z_$][\w$]*\.MenuGroup,\{children:[A-Za-z_$][\w$]*\}\),){2}/
None
JSHandle@error
WebContextMenus (had no effect):
ID: 638525
Match: /(?<=showApplicationCommandSuggestions;)if\(![A-Za-z_$][\w$]*\.[A-Za-z_$][\w$]*\)/
WebContextMenus (had no effect):
ID: 638525
Match: /("submit-button".+?)(\(0,[A-Za-z_$][\w$]*\.jsx\)\([A-Za-z_$][\w$]*\.MenuGroup,\{children:[A-Za-z_$][\w$]*\}\),){2}/
None
JSHandle@error
@austere talon shouldn't you just distribute a flatpak for the desktop version instead of building for every linux package?
what?
im so mad bro
i tweeted about this
i think discord saw my tweet and got upset i roasted them
that desktop thingy that you made
**webContextMenus.web.ts: **Lines 159-169
{
// if (!IS_DESKTOP) return
match: /(?<=showApplicationCommandSuggestions;)if\(!\i\.\i\)/,
replace: "if(false)"
},
{
// do not add menu items for entries removed in patch 1. Using a lookbehind for group 1 is slow,
// so just capture and add back
match: /("submit-button".+?)(\(0,\i\.jsx\)\(\i\.MenuGroup,\{children:\i\}\),){2}/,
replace: "$1"
},
tbh whatever. it does change nothing
.deb, .rpm & .AppImage
use your brain please
**package.json: **Lines 41-58
"linux": {
"category": "Network",
"maintainer": "vendicated+vencord-desktop@riseup.net",
"target": [
"deb",
"tar.gz",
"rpm",
"AppImage",
"pacman"
],
"desktop": {
"Name": "Vencord Desktop",
"GenericName": "Internet Messenger",
"Type": "Application",
"Categories": "Network;InstantMessaging;Chat;",
"Keywords": "discord;vencord;electron;chat;"
}
},
supporting a specific target just means adding it in the target array
that's all i gotta do
so might as well
s.set("MIN_WIDTH", 940);
s.set("MIN_HEIGHT", 500);
is that what discord uses?
oh yeah, neat
whats this discord

// Patch appSettings to force enable devtools and optionally disable min size
I think s.delete("MIN_WIDTH") might be better? I think that's a thing, tho it might also be .del()
Property 'del' does not exist on type '{ set(setting: string, v: any): void; }'.
yeah, ^ :P
ah it doesn't have it
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _fs = _interopRequireDefault(require("fs"));
var _path = _interopRequireDefault(require("path"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// TODO: sync fs operations could cause slowdown and/or freezes, depending on usage
// if this is fine, remove this todo
class Settings {
constructor(root) {
this.path = _path.default.join(root, 'settings.json');
try {
this.lastSaved = _fs.default.readFileSync(this.path);
this.settings = JSON.parse(this.lastSaved);
} catch (e) {
this.lastSaved = '';
this.settings = {};
}
this.lastModified = this._lastModified();
}
_lastModified() {
try {
return _fs.default.statSync(this.path).mtime.getTime();
} catch (e) {
return 0;
}
}
get(key, defaultValue = false) {
if (this.settings.hasOwnProperty(key)) {
return this.settings[key];
}
return defaultValue;
}
set(key, value) {
this.settings[key] = value;
}
save() {
if (this.lastModified && this.lastModified !== this._lastModified()) {
console.warn('Not saving settings, it has been externally modified.');
return;
}
try {
const toSave = JSON.stringify(this.settings, null, 2);
if (this.lastSaved != toSave) {
this.lastSaved = toSave;
_fs.default.writeFileSync(this.path, toSave);
this.lastModified = this._lastModified();
}
} catch (err) {
console.warn('Failed saving settings with error: ', err);
}
}
}
exports.default = Settings;
module.exports = exports.default;
disregard what i said then
yooo
yooo
yoooooooooooo
you're in luck
I did the fastest merge in the west because I needed an update to test my updater changes
they dont work :(
merge 836 to test ur next changes /j
i wonder if itd be possible to force discordโs titlebar on linux
doesnt matter :P
okay it works now tho we ball
:P
tiny discord achieved
lmao this is bad
lol this is literal glass
but yeah it works
show?

compressed beyond recognition............
cute banner 
ringo....
if (settings.macosTranslucency && process.platform === "darwin") {
613fa9a feat: add translucency option for macOS (#849) - ryanccn
const isExempt = exemptList.includes(message.author.id);
match: /:(\i),shouldMention:!(\i)\.shiftKey/,
description: "Invert Discord's shift replying behaviour (enable to make shift reply mention user)",
how
how what
if you're talking about \i, that's our own regex escape sequence that matches identifiers
ah I see
should I replace this one as well then? https://github.com/Vendicated/Vencord/blob/cab537e2cd9e405fc5badd17bf200a6e7e099cd8/src/plugins/noReplyMention.tsx#L53
**noReplyMention.tsx: **Line 53
match: /CREATE_PENDING_REPLY:function\((.{1,2})\){/,
yeah!
a lot of old code hasn't been migrated yet
you could also migrate from options to settings if u want
it's identical api just strongly typed, if u look at other plugins using it you'll see how it works
git pp
we all love git
i have a question about this little shit
when i change its z-index
.container-24rGVp {
z-index: 1;
}
or some shit it works fine, but when its moving to the top it goes below the channel names and basically breaks is there any way to prevent it without crazy coding skills?
(below) thats what i mean
pp() {
if [ $RANDOM[-1] -gt 5 ]; then
git pull && git push
else
git push && git pull
fi
}
$RANDOM[-1]
sh users will love
nvm fixed it by changing the z-index of the wave stuff instead
- SpotifyControls: Fixed flashing button row when hovering profile panel while
Show Controls On Hoveroption is enabled
bba8899 Implement frameless & windows ctrl q settings - Vendicated

btw u can now use VencordDesktop for Vencord plugin dev which I highly recommend because it reloads way faster
just need to set location in settings
whar
yeah but u gotta setup arch somehow
kinda deranged
wouldnt vc desktop know its own location
no like
wha
updating the pkgbuild ver
this is for loading your own build
and hash
ig u can do it manually but u also gotta generate .SRCINFO
this toggle is only visible on discord desktop
i can just do it in some different commit dw
I will put my email in plaintext
am i being stupid or is this logic not correct?
if (!invertShiftReply) return !holdingShift && isExcempt
so if invertShiftReply is off you can never mention people
oh wait ig thats correct yeah
I will use .AppImage 
i already did
@brazen phoenix using ur pr, how would I mention users using the quickreply plugin?
doesnt seem possible
Maybe add an additional setting for the plugin? or maybe just do not make NoReplyMention alter quick reply and instead add a setting to quickreply for mentionByDefault?
need to do it manually yeah
the latter sounds good
ven will love ```sh
source=("https://github.com/Vencord/Desktop/releases/download/v${pkgver}/VencordDesktop-${pkgver}.tar.gz"
"https://github.com/Vencord/Desktop/raw/main/static/icon.png"
"https://github.com/Vencord/Desktop/raw/main/LICENSE"
"vencord.desktop")
adding licenses to dependencies and using /usr/share/licenses/common/GPL3/license.txt
no need to add that dependency
licenses is dependency of base
anything in base and base-devel (git, make, gcc, grep, sed...) u don't need to add as dep
oh i didnt think it was
dzshn:vencord-desktop-bin/ % ls pkg/vencord-desktop-bin/opt/vencord
VencordDesktop-0.1.4.tar.gz
makepkg ru ok
doesnt it extract automatically
yeah duh I included the extension
I saw nothing
i'm bad in css, i want to create banner in my profile, just my profile, but i don't know how to do```css
[class^="banner"] {
content: url(https://media.tenor.com/lggaMTWU-6oAAAAM/ghost-mw2.gif);
qhar
I see something
anyone help me
@austere talon https://packages.ubuntu.com/kinetic/makepkg

do I submit the package myself and later give u the token to use in gh actions or do u upload it
u can submit it
u dont even need to give me ur token
u can just add me as maintainer i think
wait what
we could use
i'm about to tell you use usrbg but then i remember you don't know how to use third party plugin 
now i know
oh my god i will explode this eslint plugin
@spark cove we need to fork and improve
Simply use that one plugin
what
That let's you write your own plugins in a folder
Is that real
for the Copyright line I would do "Vencord contributors" only but idk if that's a good idea if u dont have trademark
Idk law is fake
SPDX License Idenfifiers can be used to indicate relevant license information at any level, from package to the source code file level.
maybe
**PKGBUILD: **Line 27
depends=('c-ares' 'gtk3' 'libevent' 'nss' 'wayland')
wayland
lmao
amazing
wow they really hate SC2034
why does it depend on wayland
should be opt-dep probably
??
anyway why are u even looking at electron
imo we should just use electron from the tar.gz
Ven did u see TS has generic jsx factories on their Todo list for 5.1
- basically rewrote the entire plugin
- new options in QuickReply--whether or not to reply ping
pr immediately
I'm so excited for that
namcap was complaining abt some deps not being listed so I checked what the electron package was using
could you not just do
"eslint-plugin-whatever": "file:./eslint-stuff"
```instead of depending on a new dependency to load your files
does it actually
ig gtk3 for filepicker
yea it does
i think no
would need to do silly mono-repo for that i think?
why would you need monorepo stuff for that though

we will make crates/ folder
@somber ginkgo
Your branch is based on 'origin/main', but the upstream is gone.
(use "git branch --unset-upstream" to fixup)
how
aur package
L
remote: error: pushing to a branch other than master is restricted
kill yourse
btw @cunning canyon u don't have to update ur branch all the time
I'll do that whenever
if you're actively using that branch and that's why you're updating no worries keep doing it, but if not then no need to do that
tbh I don't like the way it currently works because it loads a 5mb json which is kinda deranged but that's not your fault that's just how userbg does it
how would I add the ssh key to the CI
maybe we can make a fork that makes a separate file for each user and use that instead so we can just lazy fetch specific users whenever you open a profile
seems more sane
also is this urs https://aur.archlinux.org/account/vendicated
yea
you can't
but u can do it in ur fork
In settings > actions
or might be settings > secrets
I mean like
either one
in the workflow steps
oh
do I just echo $SSH_KEY > ~/.ssh/id_ed25519 and hope it works
**build.yml: **Lines 75-76
env:
API_TOKEN: ${{ secrets.BUILDS_TOKEN }}
yea
plaintext
wait
there's variable
export GIT_SSH_COMMAND="ssh -i ~/.ssh/banana"
git clone whatever```
make sure the key isn't password protected lmao
does aur allow bot accounts
if yes I will make vencord-bot account
So I don't have to use my own
ig I don't care I will do it either way
I don't see why they wouldn't allow it as long as you're not doing bad stuff
yea its probably fine
I can't find tos on their site so maybe they just don't have
Version: 2021-07-18
- Scope of the Terms of Service 1.1. Definitions The following Terms of Service contain the rules for the use of the internet Platform Arch Linux, operated by the Arch Linux Team, accessible under the domain archlinux.org and various related subdomains (the "Platform") and the respective Services, namely provision of the ...
what
is that related to what was in #๐ฅ-vencord-support-๐ฅ
that's actually not related to ur issue if that's what you're thinking :P it was something pointy complained about earlier
understandable
normal
oh my god 32k files 
github will love
electron-builder so slowwww
only on Linux cause its building two million targets
what r u doing
I need to know the correct path for the tar gz
I need the sha checksum
yea
dist/VencordDesktop-0.1.4.tar.gz
yes
i will hardcode version (real
but don't hardcode version lmao
just use silly wildcard
or maybe don't
you can use github tagname
just in case it for some reason has old files
$GITHUB_REF
sed -i "s/^sha256sums=('.*'/sha256sums=('$(sha256sum dist/VencordDesktop-$GITHUB_REF.tar.gz)'/" aurpkg/PKGBUILD
you love ```sh
git clone ssh://aur@aur.archlinux.org/vencord-desktop-bin.git aurpkg
sed -i "s/^pkgver=.$/pkgver=$GITHUB_REF/" aurpkg/PKGBUILD
sed -i "s/^sha256sums=('.'/sha256sums=('$(sha256sum dist/VencordDesktop-$GITHUB_REF.tar.gz)'/" aurpkg/PKGBUILD
makepkg --printsrcinfo > .SRCINFO
git commit -a -m "Bump version to $GITHUB_REF"
git push
oh so you do use makepkg
u don't have to manually do checksum
there's updchecksums
wtf
Bugs? You must be kidding; there are no bugs in this software. But if we happen to be wrong, file an issue with as much detail as possible at https://gitlab.archlinux.org/pacman/pacman-contrib/-/issues/new.
amazing
true
the ubuntu package doesnt have this
haram
yea ubuntu doesnt have
runs-on: arch-rolling when
DEMON
oh that just uses docker
yeah if it works then that's good enough
I was just adding the entire script on the run: property but I think it prob makes more sense to make it a separate file
I always do that lmao
put the entire script in there
but making separate file is probably better cause then u can shellcheck
and proper syntax highlighting and stuff
cutest practice target
lmao true
oof this guy looks like my ex
dzshn/Desktop
I went to bonk yay and install paru and forgor to PR
seperated the 5MB json to 32000 files
ven forgot to close https://github.com/Vendicated/Vencord/issues/810
megu is working on themes btw
although if you want a temporary hack: I usually just add // to the start of links so they become invalid 
//
the PR uses this btw if you want to do something compatible
yey cool thanks for this :D
amogus
I have both installed and basically i want some settings to be different. I don't need most plugins enabled in PTB and really want to have a different theme there to identify client at a glance. Is it possible to not share settings between clients?
the 2nd page of github pr's is like the 2nd page of google results
why
what's that
okay thank you I'll do that maybe once the site is fully ready to go as long as it doesn't require adding spyware to the site
Canary 187765 (74e355a) Vencord 40a7aa5 (Web) Chromium 113 Linux 64-Bit

does the userscript even have permission to fuck with cors
i thought that was a webext thing
this is already possible by setting the VENCORD_DATA_DIR environment variable for each discord install
I'm sorry, but how do i do that? I'm not very good at this :D
Couldn't this be done with CSS?
There is rome, but I thibk thats supports the same or less than prettier.
@glass cedar the plugin also prevents future popups silly
Ah.
I can't open the file, even I tried an alternative way and nothing came out.
use our support channel please
did u close on purpose? @verbal pumice
I think it's a cool idea I kinda forgot about the pr
ohhh I see
why?
maybe we can figure it out
As the title suggests, I would like to see a plugin that allows us to set a unique notification sound per person. The use case for this would be for example, you're playing a game and aren't in a spot where you can tab out, you would still know who it is messaging you based on the sound that played.
actually doesnt look like its that hard to fix


how the f*ck do you post a github comment from an email
Reply to the email directly
Sunday, 9 April 2023 at 5:51 pm +0100 from @.*** @.***>:
how the f*ck do you post a github comment from an email
โ
Reply to this email directly, view it on GitHub , or unsubscribe .
You are receiving this because you authored the thread. Message ID: @ github . com>
UserStore.getCurrentUser().premiumType is 0 for none, 1 for classic, 2 for normal and 3 for basic right?
It's probably undefined when the user's profile hasn't been fetched yet
no idea tbh
but I bricked vencord already cuz that was undefined
wayy after the profile was fetched
So...is this going to be a thing?
this is already possible by setting the VENCORD_DATA_DIR environment variable for each discord install
I was testing this out as it would be nice to dev on canary with a clean slate and no plugins but still be able to use stable for everything else.
However, even though I patched stable using the default VENCORD_USER_DATA_DIR, when I changed the variable to be C:\Users\<name>\AppData\Roaming\VencordCanary\dist, it changed my stable directory too. I'm not sure if I'm doing somethi...
if u just want smth with separate settings u can use vencord desktop

is that u @fleet depot
lion pfp
but yeah u actually can do this if that works for u
it has separate settings by default
mm is the vencord_data_dir supposed to do that tho
yea
but if u set it as a global env variable it will apply to all discords
the idea is that u apply it to one install
u can make a powershell discord launcher that does it
$env:VENCORD_DATA_DIR = /blah
Start-Process C:\Path\To\Discord\...
but if u really just want separate settings i recommend vencord desktop
works well
using it rn
also i thought about it again
could just store the vencord settings dir in either discord settings or localStorage
shouldnt be too hard
the main painpoint is peopel installing to weird locations and then asking for support without knowing where their install is
yeahhh
that's why I made changing it for the installer kinda complicated (env var)
and 9/10 people are gonna wanna share settings across their discords
because this way only smart people can change it
tech noobies really shouldn't be changing install dir
they might choose smth like C:\ and i think that might have permission issues
xd
vencord desktop actually looks really cool
yeah i daily drive it
especially now that it's trivial to load ur own devbuild of vencord
ooo
hmm,. how about scoop,.
want to install it on scoop,. :>
real
never
nvm,. looks like betterdiscord also not found on scoop
it doesn't make much sense to put it on scoop
it doesnt make much sense to add to anything
Answer: the env has to be set per powershell launch rather than globally in the system env
Ex for windows:
$env:VENCORD_USER_DATA_DIR = /blah
Start-Process C:\Path\To\Discord\...
also word on the street is we should try https://github.com/Vencord/Desktop which by default it has separate settings from discord stable ๐
There was no margin bottom and it glued directly to the border.
After:

it will be within 6 months
foce push jumpscare
This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
so wrong
i found a different header plugin
way saner
doesn't insert 200 license headers
I will use
also i made license headers less insane in this repo https://github.com/Vencord/Desktop/blob/main/src/preload/VencordDesktopNative.ts#L1-L7
**VencordDesktopNative.ts: **Lines 1-7
/*
* SPDX-License-Identifier: GPL-3.0
* Vencord Desktop, a desktop app aiming to give you a snappier Discord Experience
* Copyright (c) 2023 Vendicated and Vencord contributors
*/
import { ipcRenderer } from "electron";
no more 20 lines gpl jumpscare
so bad
should we do GPL-3.0-only or GPL-3.0-or-later
long ass header is the best thing with gpl
or later tbh
unless you fear gpl 4 is gonna be evil for whatever reason
should we migrate main vencord repo to this style of header
should migrate to the overwatch-pl
**overwatch: **
Overwatch License Revision 1
(c) Author, year
Permission is hereby granted, free of charge, for anyone to use, distribute, or
sell the compiled binaries, source code, and documentation (the "Software")
without attribution.
Permission to modify the Software is only granted to those that have a higher
competitive matchmaking rank than the copyright holder in Overwatch
(Blizzard, 2016).
The Software is provided in the hope that some will find it useful, but the
Software comes under NO WARRANTY, EXPRESS OR IMPLIED, and the authors of the
Software are NOT LIABLE IN THE EVENT OF LOSSES, DAMAGES OR MISUSE relating to
the Software.
you will love -7980 +1330 lines diff
(accurate calculation)
should probably update this to Overwatch 2
Another trivial change!
Having a tray icon can often feel cluttered ;p
You'd better hope the user also switched off minimize to tray now... I'm wondering what the best solution for this is :P
also why did u yeet slash commands
also why did u yeet slash commands
you yourself said you didn't really want them anymore, I was the one that said that it's ok to keep them
STOP POSTING ABOUT [Vendicated/Vencord] Add Timedones Plugin (PR #376)
yes but later I think we disscussed about it and thought it would be good if they stayed. Since people might wanna disable tz component on user profiles.
But whatever people will just not disable tz component on profiles :trollface:
Also I think we discussed to add some slash command that sends "To get your timezone please visit blabla website" to get other persons timezone string
(I forgot to unsubscribe)
Also I think we discussed to add some slash command that sends "To get your timezone please visit blabla website" to get other persons timezone string
Personally I am not really a fan of that idea, you can add it if you want.
I also think its not very useful but lewi already made a website so we can just add it
somehow even though my internet was turned off github still submitted the pull request
also @Vendicated review
just force disable close to tray if disable tray
I also think its not very useful but lewi already made a website so we can just add it
ohhhh, you are talking about that, I thought you were talking about a list of all the timezones
timedones
STOP POSTING ABOUT TIMEDONES
first solution i thought of :p probably the best
welp, til next month
ye
nop
the code is messy and the recording low quality
!predicate || predicate()
lol
here have some imagezoom nitpicks:
-
dont do anything on videos in image carousel (you cant zoom on them anyway)
-
if the "dont close the carousel" option is enabled, the bounds go way outside of the image
(no more clicking outside of the image to close it, you have to click above or below it, doesnt break anything but i just found it annoying)
same thing happens for videos even though you cannot even zoom in on a video insane
see my totally epic video
@rustic nova hi explode
there's also a bug caused by the fact the options don't apply immediately :P
wha?
e.g. you enable the tray and the minimisation option then close vencord desktop
it's
!
(because the tray doesn't appear until a restart)
uh
could port settings listeners from vencord
and just listen to change
then dynamically add/remove tray
does anyone know of a theme that goes with this
- delete if wrong channel ๐ญ
hm, probably would make sense for window size too
not possiblei think
oh :(
oh there is
maybe you'll get better luck in vencord hospital #๐ฅ-vencord-support-๐ฅ! (idk though tbh)
could just add another lambda?
yaaa i was gonna put it in there but it seems thats only for help w the client and not themes and shit
hm
Being able to collapse parts of the UI, like the server list, channel tab, etc.
There's a similar plugin for BetterDiscord that I'd really like to see implemented in Vencord.
https://betterdiscord.app/plugin/CollapsibleUI
shouldnt happen lol
am i doing something very illegal and assuming it will work?
ahh
i'm dumb
different process, right? i'm tired :P
main, preload and renderer are different processes yes
still doesn't explain the error
renderer has no node access
it does
you're trying to import system code from the browser
ah, need to use ipc then
yes
export declare class SettingsStore<T extends object> {
plain: T;
store: T;
private globalListeners;
private pathListeners;
constructor(plain: T);
private makeProxy;
setData(value: T): void;
addGlobalChangeListener(cb: (store: T) => void): void;
addChangeListener(path: string, cb: (data: any) => void): void;
removeGlobalChangeListener(cb: (store: T) => void): void;
removeChangeListener(path: string, cb: (data: any) => void): void;
}
Settings.addChangeListener("disableMinSize", disable => {
const [w, h] = disable ? [0, 0] : [MIN_WIDTH, MIN_HEIGHT];
win.setMinimumSize(w, h);
});
@lime stone
magic
0c77dbe Improve SettingsStore, add disableMinSize listener - Vendicated
It would be cool if a plugin could be added that allows you to see when someone is in a voice call. Currently, there is one, but it doesn't display an icon next to the user's profile in a list. I'm having a bad time explaining this so an example of a plugin that does this is the VoiceActivity plugin from Better Discord (https://betterdiscord.app/plugin/VoiceActivity). As you can see in that plugin, it not only shows when someone is in a call on their profile, but also next to their name in a ...
WebContextMenus (had no effect):
ID: 638525
Match: /(?<=showApplicationCommandSuggestions;)if\(![A-Za-z_$][\w$]*\.[A-Za-z_$][\w$]*\)/
WebContextMenus (had no effect):
ID: 638525
Match: /("submit-button".+?)(\(0,[A-Za-z_$][\w$]*\.jsx\)\([A-Za-z_$][\w$]*\.MenuGroup,\{children:[A-Za-z_$][\w$]*\}\),){2}/
None
JSHandle@error
WebContextMenus (had no effect):
ID: 638525
Match: /(?<=showApplicationCommandSuggestions;)if\(![A-Za-z_$][\w$]*\.[A-Za-z_$][\w$]*\)/
WebContextMenus (had no effect):
ID: 638525
Match: /("submit-button".+?)(\(0,[A-Za-z_$][\w$]*\.jsx\)\([A-Za-z_$][\w$]*\.MenuGroup,\{children:[A-Za-z_$][\w$]*\}\),){2}/
None
JSHandle@error
jumpscare
funniest shit is i somehow don't even have this
like it works on my machine
hey, I changed a bunch, could you rebase please? Additionally, we now have settings listeners set up so you can do this and it should not need a restart to apply
VencordSettings.addChangeListener("macosTranslucency", enabled => {
if (enabled) {
browserWindow.setVibrancy(...)
...
} else {
...
}
})
Whenever you got time, please rebase and you can now use settings change listeners to show/hide tray without retsrat ( i pinged u on discord with an example!! )
read your pings please
uhhh no
yeah no rush dw
like this?
perfect
man naming things is hard.
basically allows you to close the image when you click the backdrop. before you could only do that if you click top or bottom parts of the backdrop but now you can click any part of the backdrop and it will close it
it fixes this:
#๐พ-core-development message
thanks aaaz#0001
Omg ty
@bright tundra it looks a bit diff so yea
Discord Account
SkoopyDev#9911
What is it that you'd like to see?
I think there should be an "opposite" function for this setting:

Since many bots have mod+ perms, so they show like this: "Bot - Mod". However, this setting only removes the "bot" tag, so it only displays the "mod" tag. I think it would be more useful to add a different setting that removes the "mod" ta...
no gradient
nice





