Compare commits

..

No commits in common. "master" and "iav-arm-musl-dessalines" have entirely different histories.

18 changed files with 103 additions and 250 deletions

2
CODE_OF_CONDUCT.md vendored
View file

@ -30,6 +30,6 @@ In the Lemmy community we strive to go the extra step to look out for each other
And if someone takes issue with something you said or did, resist the urge to be defensive. Just stop doing what it was they complained about and apologize. Even if you feel you were misinterpreted or unfairly accused, chances are good there was something you couldve communicated better — remember that its your responsibility to make others comfortable. Everyone wants to get along and we are all here first and foremost because we want to talk about cool technology. You will find that people will be eager to assume good intent and forgive as long as you earn their trust. And if someone takes issue with something you said or did, resist the urge to be defensive. Just stop doing what it was they complained about and apologize. Even if you feel you were misinterpreted or unfairly accused, chances are good there was something you couldve communicated better — remember that its your responsibility to make others comfortable. Everyone wants to get along and we are all here first and foremost because we want to talk about cool technology. You will find that people will be eager to assume good intent and forgive as long as you earn their trust.
The enforcement policies listed above apply to all official Lemmy venues; including git repositories under [github.com/LemmyNet/lemmy](https://github.com/LemmyNet/lemmy) and [yerbamate.dev/LemmyNet/lemmy](https://yerbamate.dev/LemmyNet/lemmy), the [Matrix channel](https://matrix.to/#/!BZVTUuEiNmRcbFeLeI:matrix.org?via=matrix.org&via=privacytools.io&via=permaweb.io); and all instances under lemmy.ml. For other projects adopting the Rust Code of Conduct, please contact the maintainers of those projects for enforcement. If you wish to use this code of conduct for your own project, consider explicitly mentioning your moderation policy or making a copy with your own moderation policy so as to avoid confusion. The enforcement policies listed above apply to all official Lemmy venues; including git repositories under [github.com/LemmyNet/lemmy](https://github.com/LemmyNet/lemmy) and [yerbamate.dev/dessalines/lemmy](https://yerbamate.dev/dessalines/lemmy), the [Matrix channel](https://matrix.to/#/!BZVTUuEiNmRcbFeLeI:matrix.org?via=matrix.org&via=privacytools.io&via=permaweb.io); and all instances under lemmy.ml. For other projects adopting the Rust Code of Conduct, please contact the maintainers of those projects for enforcement. If you wish to use this code of conduct for your own project, consider explicitly mentioning your moderation policy or making a copy with your own moderation policy so as to avoid confusion.
Adapted from the [Rust Code of Conduct](https://www.rust-lang.org/policies/code-of-conduct), which is based on the [Node.js Policy on Trolling](http://blog.izs.me/post/30036893703/policy-on-trolling) as well as the [Contributor Covenant v1.3.0](https://www.contributor-covenant.org/version/1/3/0/). Adapted from the [Rust Code of Conduct](https://www.rust-lang.org/policies/code-of-conduct), which is based on the [Node.js Policy on Trolling](http://blog.izs.me/post/30036893703/policy-on-trolling) as well as the [Contributor Covenant v1.3.0](https://www.contributor-covenant.org/version/1/3/0/).

78
RELEASES.md vendored
View file

@ -1,65 +1,37 @@
# Lemmy v0.7.0 Release (2020-06-23) # Lemmy v0.7.0 Release (2020-06-22)
This release replaces [pictshare](https://github.com/HaschekSolutions/pictshare) ## Breaking Change to our image server: Pictshare to Pict-rs migration guide
with [pict-rs](https://git.asonix.dog/asonix/pict-rs), which improves performance
and security.
Overall, since our last major release in January (v0.6.0), we have closed over This release replaces [pictshare](https://github.com/HaschekSolutions/pictshare) with [pict-rs](https://git.asonix.dog/asonix/pict-rs), and a script must be run on your server to upgrade.
[100 issues!](https://github.com/LemmyNet/lemmy/milestone/16?closed=1)
- Site-wide list of recent comments To update, run:
- Reconnecting websockets
- Many more themes, including a default light one.
- Expandable embeds for post links (and thumbnails), from
[iframely](https://github.com/itteco/iframely)
- Better icons
- Emoji autocomplete to post and message bodies, and an Emoji Picker
- Post body now searchable
- Community title and description is now searchable
- Simplified cross-posts
- Better documentation
- LOTS more languages
- Lots of bugs squashed
- And more ...
## Upgrading
Before starting the upgrade, make sure that you have a working backup of your
database and image files. See our
[documentation](https://dev.lemmy.ml/docs/administration_backup_and_restore.html)
for backup instructions.
**With Ansible:**
``` ```
# deploy with ansible from your local lemmy git repo
git pull
cd ansible
ansible-playbook lemmy.yml
# connect via ssh to run the migration script
ssh your-server
cd /lemmy/
wget https://raw.githubusercontent.com/LemmyNet/lemmy/master/docker/prod/migrate-pictshare-to-pictrs.bash
chmod +x migrate-pictshare-to-pictrs.bash
sudo ./migrate-pictshare-to-pictrs.bash
```
**With manual Docker installation:**
```
# run these commands on your server
cd /lemmy cd /lemmy
wget https://raw.githubusercontent.com/LemmyNet/lemmy/master/ansible/templates/nginx.conf wget https://raw.githubusercontent.com/dessalines/lemmy/master/docker/prod/docker-compose.yml
# Replace the {{ vars }} wget https://raw.githubusercontent.com/dessalines/lemmy/master/docker/prod/migrate-pictshare-to-pictrs.bash
sudo mv nginx.conf /etc/nginx/sites-enabled/lemmy.conf
sudo nginx -s reload
wget https://raw.githubusercontent.com/LemmyNet/lemmy/master/docker/prod/docker-compose.yml
wget https://raw.githubusercontent.com/LemmyNet/lemmy/master/docker/prod/migrate-pictshare-to-pictrs.bash
chmod +x migrate-pictshare-to-pictrs.bash
sudo bash migrate-pictshare-to-pictrs.bash sudo bash migrate-pictshare-to-pictrs.bash
``` ```
**Note:** After upgrading, all users need to reload the page, then logout and You'll also have to update your nginx config, use the [one here](https://github.com/LemmyNet/lemmy/blob/master/ansible/templates/nginx.conf).
login again, so that images are loaded correctly.
*You'll have to log in again to pick up your avatar*
Apart from that, we've closed [~100 issues!](https://github.com/LemmyNet/lemmy/milestone/16?closed=1), including:
- Site-wide list of recent comments.
- Reconnecting websockets.
- Swapped out pictshare for [pict-rs](https://git.asonix.dog/asonix/pict-rs).
- Lots more themes, including a default light one.
- Expandable embeds for post links (and thumbnails), from iframely.
- Better icons.
- Emoji autocomplete to post and message bodies, and an Emoji Picker.
- Post body now searchable.
- Community title and description is now searchable.
- Simplified cross-posts.
- Better documentation.
- LOTS more languages.
- Lots of bugs squashed.
# Lemmy v0.6.0 Release (2020-01-16) # Lemmy v0.6.0 Release (2020-01-16)

2
ansible/VERSION vendored
View file

@ -1 +1 @@
v0.7.1 v0.6.82

View file

@ -12,7 +12,7 @@ services:
restart: always restart: always
lemmy: lemmy:
image: dessalines/lemmy:v0.7.1 image: dessalines/lemmy:v0.6.82
ports: ports:
- "127.0.0.1:8536:8536" - "127.0.0.1:8536:8536"
restart: always restart: always

View file

@ -6,25 +6,20 @@ Make sure you have both docker and docker-compose(>=`1.24.0`) installed. On Ubun
# create a folder for the lemmy files. the location doesnt matter, you can put this anywhere you want # create a folder for the lemmy files. the location doesnt matter, you can put this anywhere you want
mkdir /lemmy mkdir /lemmy
cd /lemmy cd /lemmy
# download default config files # download default config files
wget https://raw.githubusercontent.com/LemmyNet/lemmy/master/docker/prod/docker-compose.yml wget https://raw.githubusercontent.com/dessalines/lemmy/master/docker/prod/docker-compose.yml
wget https://raw.githubusercontent.com/LemmyNet/lemmy/master/docker/lemmy.hjson wget https://raw.githubusercontent.com/dessalines/lemmy/master/docker/lemmy.hjson
wget https://raw.githubusercontent.com/LemmyNet/lemmy/master/docker/iframely.config.local.js wget https://raw.githubusercontent.com/dessalines/lemmy/master/docker/iframely.config.local.js
# Set correct permissions for pictrs folder
mkdir -p volumes/pictrs
sudo chown -R 991:991 volumes/pictrs
``` ```
After this, have a look at the [config file](administration_configuration.md) named `lemmy.hjson`, and adjust it, in particular the hostname, and possibly the db password. Then run: After this, have a look at the [config file](administration_configuration.md) named `lemmy.hjson`, and adjust it, in particular the hostname, and possibly the db password. Then run:
`docker-compose up -d` `docker-compose up -d`
To make Lemmy available outside the server, you need to setup a reverse proxy, like Nginx. [A sample nginx config](https://raw.githubusercontent.com/LemmyNet/lemmy/master/ansible/templates/nginx.conf), could be setup with: To make Lemmy available outside the server, you need to setup a reverse proxy, like Nginx. [A sample nginx config](https://raw.githubusercontent.com/dessalines/lemmy/master/ansible/templates/nginx.conf), could be setup with:
```bash ```bash
wget https://raw.githubusercontent.com/LemmyNet/lemmy/master/ansible/templates/nginx.conf wget https://raw.githubusercontent.com/dessalines/lemmy/master/ansible/templates/nginx.conf
# Replace the {{ vars }} # Replace the {{ vars }}
sudo mv nginx.conf /etc/nginx/sites-enabled/lemmy.conf sudo mv nginx.conf /etc/nginx/sites-enabled/lemmy.conf
``` ```
@ -36,6 +31,6 @@ You will also need to setup TLS, for example with [Let's Encrypt](https://letsen
To update to the newest version, you can manually change the version in `docker-compose.yml`. Alternatively, fetch the latest version from our git repo: To update to the newest version, you can manually change the version in `docker-compose.yml`. Alternatively, fetch the latest version from our git repo:
```bash ```bash
wget https://raw.githubusercontent.com/LemmyNet/lemmy/master/docker/prod/docker-compose.yml wget https://raw.githubusercontent.com/dessalines/lemmy/master/docker/prod/docker-compose.yml
docker-compose up -d docker-compose up -d
``` ```

View file

@ -4,9 +4,9 @@ Information about contributing to Lemmy, whether it is translating, testing, des
## Issue tracking / Repositories ## Issue tracking / Repositories
- [GitHub (for issues and pull requests)](https://github.com/LemmyNet/lemmy) - [GitHub (for issues)](https://github.com/LemmyNet/lemmy)
- [Gitea (only for pull requests)](https://yerbamate.dev/LemmyNet/lemmy) - [Gitea](https://yerbamate.dev/dessalines/lemmy)
- [GitLab (only code-mirror)](https://gitlab.com/dessalines/lemmy) - [GitLab](https://gitlab.com/dessalines/lemmy)
## Translating ## Translating

View file

@ -49,7 +49,5 @@
## Member List / Contact Info ## Member List / Contact Info
General Contact [@LemmyDev Mastodon](https://mastodon.social/@LemmyDev) General Contact [@LemmyDev Mastodon](https://mastodon.social/@LemmyDev)
- [Dessalines](https://dev.lemmy.ml/u/dessalines) - Dessalines [Matrix](https://matrix.to/#/@happydooby:matrix.org)
- [Nutomic](https://dev.lemmy.ml/u/nutomic) - Nutomic [Matrix](https://matrix.to/#/@nutomic:matrix.org), [Mastodon](https://radical.town/@felix)
- [AgreeableLandscape](https://dev.lemmy.ml/u/AgreeableLandscape)
- [fruechtchen](https://dev.lemmy.ml/u/fruechtchen)

View file

@ -1 +1 @@
pub const VERSION: &str = "v0.7.1"; pub const VERSION: &str = "v0.6.82";

View file

@ -37,7 +37,7 @@
} }
.md-div img { .md-div img {
max-height: 40vh; max-height: 90vh;
max-width: 100%; max-width: 100%;
height: auto; height: auto;
} }

View file

@ -1,30 +0,0 @@
$white: #ffffff;
$orange: #faa077;
$cyan: #02bdc2;
$green: #d4e9d7;
$secondary: $green;
$body-color: $gray-700;
$link-color: theme-color("danger");;
$primary: $orange;
$red: #d8486a;
$border-radius: 1.5rem;
$border-radius-lg: 1.5rem;
$border-radius-sm: 1rem;
$font-family-sans-serif: Guardian-EgypTT,serif,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
$headings-color: $gray-700;
$input-btn-focus-color: rgba($component-active-bg, .75);
$form-feedback-valid-color: theme-color("info");
$navbar-light-color: $gray-600;
$black: #222222;
$navbar-dark-toggler-border-color: rgba($black, .1);
$navbar-light-active-color: $gray-900;
$card-color: $gray-700;
$card-cap-color: $gray-700;
$info: darken($green, 25%);;
$body-bg: #f2f0f0;
$success: darken($green, 25%);;
$danger: darken($primary, 25%);
$navbar-light-hover-color: $gray-900;
$card-bg: $gray-100;
$border-color: $gray-700;

File diff suppressed because one or more lines are too long

View file

@ -245,32 +245,18 @@ export class CommentForm extends Component<CommentFormProps, CommentFormState> {
}); });
} }
handleFinished(data: CommentResponse) { handleFinished() {
let isReply = this.state.previewMode = false;
this.props.node !== undefined && data.comment.parent_id !== null; this.state.loading = false;
let xor = this.state.commentForm.content = '';
+!(data.comment.parent_id !== null) ^ +(this.props.node !== undefined); this.setState(this.state);
let form: any = document.getElementById(this.formId);
if ( form.reset();
(data.comment.creator_id == UserService.Instance.user.id && if (this.props.node) {
// If its a reply, make sure parent child match this.props.onReplyCancel();
isReply &&
data.comment.parent_id == this.props.node.comment.id) ||
// Otherwise, check the XOR of the two
(!isReply && xor)
) {
this.state.previewMode = false;
this.state.loading = false;
this.state.commentForm.content = '';
this.setState(this.state);
let form: any = document.getElementById(this.formId);
form.reset();
if (this.props.node) {
this.props.onReplyCancel();
}
autosize.update(form);
this.setState(this.state);
} }
autosize.update(document.querySelector('textarea'));
this.setState(this.state);
} }
handleCommentSubmit(i: CommentForm, event: any) { handleCommentSubmit(i: CommentForm, event: any) {
@ -373,10 +359,14 @@ export class CommentForm extends Component<CommentFormProps, CommentFormState> {
if (UserService.Instance.user) { if (UserService.Instance.user) {
if (res.op == UserOperation.CreateComment) { if (res.op == UserOperation.CreateComment) {
let data = res.data as CommentResponse; let data = res.data as CommentResponse;
this.handleFinished(data); if (data.comment.creator_id == UserService.Instance.user.id) {
this.handleFinished();
}
} else if (res.op == UserOperation.EditComment) { } else if (res.op == UserOperation.EditComment) {
let data = res.data as CommentResponse; let data = res.data as CommentResponse;
this.handleFinished(data); if (data.comment.creator_id == UserService.Instance.user.id) {
this.handleFinished();
}
} }
} }
} }

2
ui/src/index.html vendored
View file

@ -15,7 +15,7 @@
<link rel="stylesheet" type="text/css" href="/static/assets/css/toastify.css" /> <link rel="stylesheet" type="text/css" href="/static/assets/css/toastify.css" />
<link rel="stylesheet" type="text/css" href="/static/assets/css/selectr.min.css" /> <link rel="stylesheet" type="text/css" href="/static/assets/css/selectr.min.css" />
<link rel="stylesheet" type="text/css" href="/static/assets/css/tippy.css" /> <link rel="stylesheet" type="text/css" href="/static/assets/css/tippy.css" />
<link rel="stylesheet" type="text/css" href="/static/assets/css/themes/litely.min.css" id="default-light" media="(prefers-color-scheme: light)" /> <link rel="stylesheet" type="text/css" href="/static/assets/css/themes/united.min.css" id="default-light" media="(prefers-color-scheme: light)" />
<link rel="stylesheet" type="text/css" href="/static/assets/css/themes/darkly.min.css" id="default-dark" media="(prefers-color-scheme: no-preference), (prefers-color-scheme: dark)" /> <link rel="stylesheet" type="text/css" href="/static/assets/css/themes/darkly.min.css" id="default-dark" media="(prefers-color-scheme: no-preference), (prefers-color-scheme: dark)" />
<link rel="stylesheet" type="text/css" href="/static/assets/css/main.css" /> <link rel="stylesheet" type="text/css" href="/static/assets/css/main.css" />

30
ui/src/utils.ts vendored
View file

@ -103,7 +103,6 @@ export const themes = [
'vaporwave', 'vaporwave',
'vaporwave-dark', 'vaporwave-dark',
'i386', 'i386',
'litely',
]; ];
export const emojiPicker = new EmojiButton({ export const emojiPicker = new EmojiButton({
@ -114,26 +113,11 @@ export const emojiPicker = new EmojiButton({
// TODO i18n // TODO i18n
}); });
const DEFAULT_ALPHABET = export function randomStr() {
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; return Math.random()
.toString(36)
function getRandomCharFromAlphabet(alphabet: string): string { .replace(/[^a-z]+/g, '')
return alphabet.charAt(Math.floor(Math.random() * alphabet.length)); .substr(2, 10);
}
export function randomStr(
idDesiredLength: number = 20,
alphabet = DEFAULT_ALPHABET
): string {
/**
* Create n-long array and map it to random chars from given alphabet.
* Then join individual chars as string
*/
return Array.from({ length: idDesiredLength })
.map(() => {
return getRandomCharFromAlphabet(alphabet);
})
.join('');
} }
export function wsJsonToRes(msg: WebSocketJsonResponse): WebSocketResponse { export function wsJsonToRes(msg: WebSocketJsonResponse): WebSocketResponse {
@ -527,7 +511,7 @@ export function pictrsDeleteToast(
backgroundColor: backgroundColor, backgroundColor: backgroundColor,
gravity: 'top', gravity: 'top',
position: 'right', position: 'right',
duration: 10000, duration: 0,
onClick: () => { onClick: () => {
if (toast) { if (toast) {
window.location.replace(deleteUrl); window.location.replace(deleteUrl);
@ -556,7 +540,7 @@ export function messageToastify(
close: true, close: true,
gravity: 'top', gravity: 'top',
position: 'right', position: 'right',
duration: 5000, duration: 0,
onClick: () => { onClick: () => {
if (toast) { if (toast) {
toast.hideToast(); toast.hideToast();

2
ui/src/version.ts vendored
View file

@ -1 +1 @@
export const version: string = 'v0.7.1'; export const version: string = 'v0.6.82';

View file

@ -10,7 +10,7 @@
"related_posts": "Publications similaires", "related_posts": "Publications similaires",
"cross_posts": "Ce lien a également été publié sur :", "cross_posts": "Ce lien a également été publié sur :",
"cross_post": "publication croisée", "cross_post": "publication croisée",
"cross_posted_to": "publication croisée sur : ", "cross_posted_to": "publication croisée à : ",
"comments": "Commentaires", "comments": "Commentaires",
"number_of_comments": "{{count}} Commentaire", "number_of_comments": "{{count}} Commentaire",
"number_of_comments_plural": "{{count}} Commentaires", "number_of_comments_plural": "{{count}} Commentaires",
@ -25,41 +25,41 @@
"list_of_communities": "Liste des communautés", "list_of_communities": "Liste des communautés",
"number_of_communities": "{{count}} Communauté", "number_of_communities": "{{count}} Communauté",
"number_of_communities_plural": "{{count}} Communautés", "number_of_communities_plural": "{{count}} Communautés",
"community_reqs": "en minuscule, tirets du bas et sans espace.", "community_reqs": "en minuscule, sans espace et avec tiret du bas.",
"create_private_message": "Créer un message privé", "create_private_message": "Créer un message privé",
"send_secure_message": "Envoyer un message sécurisé", "send_secure_message": "Envoyer le message sécurisé",
"send_message": "Envoyer le message", "send_message": "Envoyer le message",
"message": "Message", "message": "Message",
"edit": "éditer", "edit": "éditer",
"reply": "répondre", "reply": "répondre",
"cancel": "Annuler", "cancel": "Annuler",
"preview": "Prévisualiser", "preview": "prévisualiser",
"upload_image": "envoyer une image", "upload_image": "envoyer une image",
"avatar": "Avatar", "avatar": "Avatar",
"upload_avatar": "Télécharger un avatar", "upload_avatar": "Télécharger un avatar",
"show_avatars": "Afficher les avatars", "show_avatars": "Afficher les avatars",
"formatting_help": "aide au formatage", "formatting_help": "aide au formattage",
"view_source": "voir la source", "view_source": "voir la source",
"unlock": "déverrouiller", "unlock": "débloquer",
"lock": "verrouiller", "lock": "bloquer",
"sticky": "épingler", "sticky": "épingler",
"unsticky": "désépingler", "unsticky": "décrocher",
"link": "lien", "link": "lien",
"archive_link": "archiver le lien", "archive_link": "archiver le lien",
"mod": "modérateur", "mod": "modérateur",
"mods": "modérateurs", "mods": "modérateurs",
"moderates": "Modérer", "moderates": "Modérer",
"settings": "Paramètres", "settings": "Paramètres",
"remove_as_mod": "supprimer comme modérateur", "remove_as_mod": "Supprimer comme modérateur",
"appoint_as_mod": "nommer comme modérateur", "appoint_as_mod": "Nommer comme modérateur",
"modlog": "Historique de modération", "modlog": "Historique de modération",
"admin": "admin", "admin": "admin",
"admins": "admins", "admins": "admins",
"remove_as_admin": "supprimer comme admin", "remove_as_admin": "Supprimer comme admin",
"appoint_as_admin": "nommer comme admin", "appoint_as_admin": "Nommer comme admin",
"remove": "retirer", "remove": "retirer",
"removed": "supprimé par le modérateur", "removed": "retiré par le modérateur",
"locked": "verrouillé", "locked": "bloqué",
"stickied": "épinglé", "stickied": "épinglé",
"reason": "Raison", "reason": "Raison",
"mark_as_read": "marquer comme lu", "mark_as_read": "marquer comme lu",
@ -71,13 +71,13 @@
"restore": "restaurer", "restore": "restaurer",
"ban": "bannir", "ban": "bannir",
"ban_from_site": "bannir du site", "ban_from_site": "bannir du site",
"unban": "débannir", "unban": "pardon",
"unban_from_site": "débannir du site", "unban_from_site": "faire revenir sur le site",
"banned": "banni", "banned": "banni",
"save": "sauvegarder", "save": "sauvegarder",
"unsave": "retirer", "unsave": "retirer",
"create": "créer", "create": "créer",
"creator": "créateur", "creator": "createur",
"username": "Nom dutilisateur·rice", "username": "Nom dutilisateur·rice",
"email_or_username": "Email ou nom dutilisateur·rice", "email_or_username": "Email ou nom dutilisateur·rice",
"number_of_users": "{{count}} Utilisateur", "number_of_users": "{{count}} Utilisateur",
@ -128,7 +128,7 @@
"login_sign_up": "Se connecter / Sinscrire", "login_sign_up": "Se connecter / Sinscrire",
"login": "Se connecter", "login": "Se connecter",
"sign_up": "Sinscrire", "sign_up": "Sinscrire",
"notifications_error": "Les notifications de bureau ne sont pas disponibles sur votre navigateur. Essayez Firefox ou Chrome.", "notifications_error": "Les notifications de bureau ne sont pas discponibles sur votre navigateur. Essayez Firefox ou Chrome.",
"unread_messages": "Messages non-lu", "unread_messages": "Messages non-lu",
"messages": "Messages", "messages": "Messages",
"password": "Mot de passe", "password": "Mot de passe",
@ -143,7 +143,7 @@
"matrix_user_id": "Utilisateur Matrix", "matrix_user_id": "Utilisateur Matrix",
"private_message_disclaimer": "Attention : les messages privés dans Lemmy ne sont pas sécurisés. Veuillez créer un compte sur <1>Riot.im</1> pour pouvoir envoyer des messages sécurisés.", "private_message_disclaimer": "Attention : les messages privés dans Lemmy ne sont pas sécurisés. Veuillez créer un compte sur <1>Riot.im</1> pour pouvoir envoyer des messages sécurisés.",
"send_notifications_to_email": "Envoyer des notifications par email", "send_notifications_to_email": "Envoyer des notifications par email",
"optional": "Facultatif", "optional": "Optionnel",
"expires": "Expire", "expires": "Expire",
"language": "Langue", "language": "Langue",
"browser_default": "Défaut pour le navigateur", "browser_default": "Défaut pour le navigateur",
@ -176,7 +176,7 @@
"support_on_liberapay": "Soutenir sur Liberapay", "support_on_liberapay": "Soutenir sur Liberapay",
"donate_to_lemmy": "Faire un don à Lemmy", "donate_to_lemmy": "Faire un don à Lemmy",
"donate": "Faire un don", "donate": "Faire un don",
"general_sponsors": "Les Sponsors Généraux sont celles et ceux qui ont fait une donation entre 10 et 39$.", "general_sponsors": "Les sponsors généraux sont ceux garantissant de 10 à 39$.",
"crypto": "Cryptomonnaies", "crypto": "Cryptomonnaies",
"bitcoin": "Bitcoin", "bitcoin": "Bitcoin",
"ethereum": "Ethereum", "ethereum": "Ethereum",
@ -192,7 +192,7 @@
"yes": "oui", "yes": "oui",
"no": "non", "no": "non",
"powered_by": "Propulsé par", "powered_by": "Propulsé par",
"landing": "Lemmy est un <1>aggrégateur de liens</1>, similaire à Reddit et conçu pour fonctionner sur le <2>Fédivers</2>.<3></3>Il est auto-hébergeable, se met à jour en direct et est léger (<4>~80kB</4>). La fédération via ActivityPub est prévue dans sa feuille de route. <5></5>Lemmy est une <6>version beta très précoce</6> et de nombreuses fonctionnalités sont manquantes ou non fonctionnelles. <7></7>Vous pouvez signaler des bugs et suggérer de nouvelles fonctionnalités <8>ici.</8><9></9>Créé avec <10>Rust</10>, <11>Actix</11>, <12>Inferno</12>, <13>Typescript</13>.", "landing": "Lemmy est un <1>aggrégateur de liens</1>, similaire à reddit et conçu pour fonctionner sur le <2>fédiverse</2>.<3></3>Il est auto-hébergeable, se met à jour en direct et est léger (<4>~80kB</4>). La fédération via ActivityPub est prévue dans sa feuille de route. <5></5>Lemmy est une <6>version beta très précoce</6> et de nombreuses fonctionnalités sont manquantes ou non fonctionnelles. <7></7>Vous pouvez rapporter des bugs et suggérer de nouvelles fonctionnalités <8>ici.</8><9></9>Crée avec <10>Rust</10>, <11>Actix</11>, <12>Inferno</12>, <13>Typescript</13>.",
"not_logged_in": "Vous nêtes pas connecté.", "not_logged_in": "Vous nêtes pas connecté.",
"logged_in": "Vous êtes connecté.", "logged_in": "Vous êtes connecté.",
"community_ban": "Vous avez été banni de cette communauté.", "community_ban": "Vous avez été banni de cette communauté.",
@ -201,7 +201,7 @@
"couldnt_like_comment": "Impossible daimer le commentaire.", "couldnt_like_comment": "Impossible daimer le commentaire.",
"couldnt_update_comment": "Impossible de mettre à jour le commentaire.", "couldnt_update_comment": "Impossible de mettre à jour le commentaire.",
"couldnt_save_comment": "Impossible de sauvegarder le commentaire.", "couldnt_save_comment": "Impossible de sauvegarder le commentaire.",
"couldnt_get_comments": "Impossible d'obtenir les commentaires.", "couldnt_get_comments": "Impossible de obtenir les commentaires.",
"no_comment_edit_allowed": "Vous nêtes pas autorisé à éditer ce commentaire.", "no_comment_edit_allowed": "Vous nêtes pas autorisé à éditer ce commentaire.",
"no_post_edit_allowed": "Vous nêtes pas autorisé à éditer la publication.", "no_post_edit_allowed": "Vous nêtes pas autorisé à éditer la publication.",
"no_community_edit_allowed": "Vous nêtes pas autorisé à éditer cette communauté.", "no_community_edit_allowed": "Vous nêtes pas autorisé à éditer cette communauté.",
@ -236,25 +236,22 @@
"time": "Temps", "time": "Temps",
"action": "Action", "action": "Action",
"more": "plus", "more": "plus",
"admin_settings": "Paramètres Administrateur", "admin_settings": "Paramètres administratifs",
"site_config": "Configuration du site", "site_config": "Configuration du site",
"banned_users": "Utilisateurs interdits", "banned_users": "Utilisateurs interdits",
"site_saved": "Site sauvegardé.", "site_saved": "Site sauvegardé.",
"support_on_open_collective": "Soutien sur OpenCollective", "support_on_open_collective": "Soutien à OpenCollective",
"sorting_help": "aide au tri", "sorting_help": "aide au tri",
"upvote": "Voter pour", "upvote": "Aime",
"show_context": "Afficher le contexte", "show_context": "Afficher le contexte",
"block_leaving": "Vous êtes sûr de vouloir partir ?", "block_leaving": "Vous êtes sûr de vouloir partir ?",
"number_of_upvotes": "{{count}} Votes pour", "number_of_upvotes": "{{count}} votes pour",
"number_of_upvotes_plural": "{{count}} Votes contre", "number_of_upvotes_plural": "{{count}} votes contre",
"number_of_downvotes": "{{count}} Vote contre", "number_of_downvotes": "{{count}} vote contre",
"number_of_downvotes_plural": "{{count}} Votes contre", "number_of_downvotes_plural": "{{count}} votes contre",
"downvote": "Voter contre", "downvote": "Voter contre",
"emoji_picker": "Sélecteur démojis", "emoji_picker": "Sélecteur démojis",
"silver_sponsors": "Les Sponsors Argent sont celles et ceux qui ont fait une donation de 40$ à Lemmy.", "silver_sponsors": "Les sponsors argent sont ceux et celles qui ont fait une donation de 40$ à Lemmy.",
"select_a_community": "Sélectionner une communauté", "select_a_community": "Sélectionner une communauté",
"invalid_username": "Nom d'utilisateur invalide.", "invalid_username": "Nom d'utilisateur invalide."
"invalid_community_name": "Nom invalide.",
"click_to_delete_picture": "Cliquer pour supprimer l'image.",
"picture_deleted": "Image supprimée."
} }

View file

@ -103,52 +103,5 @@
"number_of_users_plural": "{{count}} felhasználó", "number_of_users_plural": "{{count}} felhasználó",
"number_online": "{{count}} online felhasználó", "number_online": "{{count}} online felhasználó",
"number_online_plural": "{{count}} online felhasználó", "number_online_plural": "{{count}} online felhasználó",
"subscribers": "Feliratkozók", "subscribers": "Feliratkozók"
"prev": "Előző",
"next": "Következő",
"sidebar": "Oldalsáv",
"sort_type": "Rendezési mód",
"hot": "Népszerű",
"new": "Új",
"old": "Régi",
"invalid_community_name": "Érvénytelen név.",
"inbox_for": "Bejövő üzenetek <1>{{user}}</1> részére",
"overview": "Áttekintés",
"notifications_error": "Az asztali értesítések nem érhetőek el a böngésződben. Próbáld meg Firefoxszal vagy Chrome-mal!",
"no_email_setup": "Az email nincs megfelelően beállítva ezen a szerveren.",
"click_to_delete_picture": "Kattints a kép törléséhez!",
"picture_deleted": "Kép törölve.",
"top_day": "A nap bejegyzése",
"week": "Hét",
"month": "Hónap",
"year": "Év",
"all": "Mind",
"top": "Legjobb",
"api": "API",
"docs": "Dokumentáció",
"inbox": "Bejövő üzenetek",
"mark_all_as_read": "az összes megjelölése olvasottként",
"type": "Típus",
"unread": "Olvastalan",
"replies": "Válaszok",
"mentions": "Említések",
"reply_sent": "Válasz elküldve",
"message_sent": "Üzenet elküldve",
"search": "Keresés",
"view": "Nézet",
"logout": "Kijelentkezés",
"login_sign_up": "Bejelentkezés / Regisztráció",
"login": "Bejelentkezés",
"sign_up": "Regisztráció",
"unread_messages": "Olvastalan üzenetek",
"messages": "Üzenetek",
"password": "Jelszó",
"verify_password": "Jelszó megerősítése",
"old_password": "Régi jelszó",
"forgot_password": "elfelejtettem a jelszavamat",
"reset_password_mail_sent": "Egy email el lett küldve a jelszó visszaállításához.",
"password_change": "Jelszó megváltoztatása",
"new_password": "Új jelszó",
"email": "Email",
"matrix_user_id": "Matrix felhasználó"
} }

View file

@ -49,14 +49,14 @@
"remove_as_admin": "rimuovi come amministratore", "remove_as_admin": "rimuovi come amministratore",
"appoint_as_admin": "nomina come amministratore", "appoint_as_admin": "nomina come amministratore",
"remove": "rimuovi", "remove": "rimuovi",
"removed": "rimosso da un moderatore", "removed": "rimosso",
"locked": "bloccato", "locked": "bloccato",
"stickied": "evidenziato", "stickied": "evidenziato",
"reason": "Motivo", "reason": "Motivo",
"mark_as_read": "segna come letto", "mark_as_read": "segna come letto",
"mark_as_unread": "segna come non letto", "mark_as_unread": "segna come non letto",
"delete": "cancella", "delete": "cancella",
"deleted": "eliminato dal creatore", "deleted": "cancellato",
"delete_account": "Cancella Account", "delete_account": "Cancella Account",
"delete_account_confirm": "Attenzione: stai per cancellare permanentemente tutti i tuoi dati. Inserisci la tua password per confermare questa azione.", "delete_account_confirm": "Attenzione: stai per cancellare permanentemente tutti i tuoi dati. Inserisci la tua password per confermare questa azione.",
"restore": "ripristina", "restore": "ripristina",
@ -142,7 +142,7 @@
"theme": "Tema", "theme": "Tema",
"sponsors": "Sponsor", "sponsors": "Sponsor",
"sponsors_of_lemmy": "Sponsor di Lemmy", "sponsors_of_lemmy": "Sponsor di Lemmy",
"sponsor_message": "Lemmy è software libero e <1>open-source</1>, senza nessuna pubblicità, monetizzazione o investitori esterni, per sempre. Le tue donazioni sostengono direttamente lo sviluppo full-time del progetto. Si ringraziano le seguenti persone:", "sponsor_message": "Lemmy è software libero e <1>open-source</1>, il che significa nessuna pubblicità, monetizzazione o investitori esterni, per sempre. Le tue donazioni sostengono direttamente lo sviluppo full-time del progetto. Si ringraziano le seguenti persone:",
"support_on_patreon": "Sostieni su Patreon", "support_on_patreon": "Sostieni su Patreon",
"support_on_liberapay": "Sostieni su Liberapay", "support_on_liberapay": "Sostieni su Liberapay",
"general_sponsors": "Gli sponsor generali sono quelli che hanno investito dai 10$ ai 39$ su Lemmy.", "general_sponsors": "Gli sponsor generali sono quelli che hanno investito dai 10$ ai 39$ su Lemmy.",
@ -251,10 +251,5 @@
"no_private_message_edit_allowed": "Non hai i permessi per modificare un messaggio privato.", "no_private_message_edit_allowed": "Non hai i permessi per modificare un messaggio privato.",
"time": "Tempo", "time": "Tempo",
"action": "Azione", "action": "Azione",
"silver_sponsors": "Gli sponsor generali sono quelli che hanno investito 40$ su Lemmy.", "silver_sponsors": "Gli sponsor generali sono quelli che hanno investito 40$ su Lemmy."
"invalid_community_name": "Nome non valido.",
"click_to_delete_picture": "Clicca per eliminare la foto.",
"picture_deleted": "Foto eliminata.",
"select_a_community": "Seleziona una comunità",
"invalid_username": "Username non valido."
} }