Merge branch 'instance_only_statuses' of https://github.com/masto-donte-com-br/mastodon into hometown-dev

This commit is contained in:
Darius Kazemi
2020-03-02 09:52:41 -08:00
1433 changed files with 34473 additions and 9858 deletions

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -0,0 +1,180 @@
import api from '../api';
import { normalizeAnnouncement } from './importer/normalizer';
export const ANNOUNCEMENTS_FETCH_REQUEST = 'ANNOUNCEMENTS_FETCH_REQUEST';
export const ANNOUNCEMENTS_FETCH_SUCCESS = 'ANNOUNCEMENTS_FETCH_SUCCESS';
export const ANNOUNCEMENTS_FETCH_FAIL = 'ANNOUNCEMENTS_FETCH_FAIL';
export const ANNOUNCEMENTS_UPDATE = 'ANNOUNCEMENTS_UPDATE';
export const ANNOUNCEMENTS_DELETE = 'ANNOUNCEMENTS_DELETE';
export const ANNOUNCEMENTS_DISMISS_REQUEST = 'ANNOUNCEMENTS_DISMISS_REQUEST';
export const ANNOUNCEMENTS_DISMISS_SUCCESS = 'ANNOUNCEMENTS_DISMISS_SUCCESS';
export const ANNOUNCEMENTS_DISMISS_FAIL = 'ANNOUNCEMENTS_DISMISS_FAIL';
export const ANNOUNCEMENTS_REACTION_ADD_REQUEST = 'ANNOUNCEMENTS_REACTION_ADD_REQUEST';
export const ANNOUNCEMENTS_REACTION_ADD_SUCCESS = 'ANNOUNCEMENTS_REACTION_ADD_SUCCESS';
export const ANNOUNCEMENTS_REACTION_ADD_FAIL = 'ANNOUNCEMENTS_REACTION_ADD_FAIL';
export const ANNOUNCEMENTS_REACTION_REMOVE_REQUEST = 'ANNOUNCEMENTS_REACTION_REMOVE_REQUEST';
export const ANNOUNCEMENTS_REACTION_REMOVE_SUCCESS = 'ANNOUNCEMENTS_REACTION_REMOVE_SUCCESS';
export const ANNOUNCEMENTS_REACTION_REMOVE_FAIL = 'ANNOUNCEMENTS_REACTION_REMOVE_FAIL';
export const ANNOUNCEMENTS_REACTION_UPDATE = 'ANNOUNCEMENTS_REACTION_UPDATE';
export const ANNOUNCEMENTS_TOGGLE_SHOW = 'ANNOUNCEMENTS_TOGGLE_SHOW';
const noOp = () => {};
export const fetchAnnouncements = (done = noOp) => (dispatch, getState) => {
dispatch(fetchAnnouncementsRequest());
api(getState).get('/api/v1/announcements').then(response => {
dispatch(fetchAnnouncementsSuccess(response.data.map(x => normalizeAnnouncement(x))));
}).catch(error => {
dispatch(fetchAnnouncementsFail(error));
}).finally(() => {
done();
});
};
export const fetchAnnouncementsRequest = () => ({
type: ANNOUNCEMENTS_FETCH_REQUEST,
skipLoading: true,
});
export const fetchAnnouncementsSuccess = announcements => ({
type: ANNOUNCEMENTS_FETCH_SUCCESS,
announcements,
skipLoading: true,
});
export const fetchAnnouncementsFail= error => ({
type: ANNOUNCEMENTS_FETCH_FAIL,
error,
skipLoading: true,
skipAlert: true,
});
export const updateAnnouncements = announcement => ({
type: ANNOUNCEMENTS_UPDATE,
announcement: normalizeAnnouncement(announcement),
});
export const dismissAnnouncement = announcementId => (dispatch, getState) => {
dispatch(dismissAnnouncementRequest(announcementId));
api(getState).post(`/api/v1/announcements/${announcementId}/dismiss`).then(() => {
dispatch(dismissAnnouncementSuccess(announcementId));
}).catch(error => {
dispatch(dismissAnnouncementFail(announcementId, error));
});
};
export const dismissAnnouncementRequest = announcementId => ({
type: ANNOUNCEMENTS_DISMISS_REQUEST,
id: announcementId,
});
export const dismissAnnouncementSuccess = announcementId => ({
type: ANNOUNCEMENTS_DISMISS_SUCCESS,
id: announcementId,
});
export const dismissAnnouncementFail = (announcementId, error) => ({
type: ANNOUNCEMENTS_DISMISS_FAIL,
id: announcementId,
error,
});
export const addReaction = (announcementId, name) => (dispatch, getState) => {
const announcement = getState().getIn(['announcements', 'items']).find(x => x.get('id') === announcementId);
let alreadyAdded = false;
if (announcement) {
const reaction = announcement.get('reactions').find(x => x.get('name') === name);
if (reaction && reaction.get('me')) {
alreadyAdded = true;
}
}
if (!alreadyAdded) {
dispatch(addReactionRequest(announcementId, name, alreadyAdded));
}
api(getState).put(`/api/v1/announcements/${announcementId}/reactions/${name}`).then(() => {
dispatch(addReactionSuccess(announcementId, name, alreadyAdded));
}).catch(err => {
if (!alreadyAdded) {
dispatch(addReactionFail(announcementId, name, err));
}
});
};
export const addReactionRequest = (announcementId, name) => ({
type: ANNOUNCEMENTS_REACTION_ADD_REQUEST,
id: announcementId,
name,
skipLoading: true,
});
export const addReactionSuccess = (announcementId, name) => ({
type: ANNOUNCEMENTS_REACTION_ADD_SUCCESS,
id: announcementId,
name,
skipLoading: true,
});
export const addReactionFail = (announcementId, name, error) => ({
type: ANNOUNCEMENTS_REACTION_ADD_FAIL,
id: announcementId,
name,
error,
skipLoading: true,
});
export const removeReaction = (announcementId, name) => (dispatch, getState) => {
dispatch(removeReactionRequest(announcementId, name));
api(getState).delete(`/api/v1/announcements/${announcementId}/reactions/${name}`).then(() => {
dispatch(removeReactionSuccess(announcementId, name));
}).catch(err => {
dispatch(removeReactionFail(announcementId, name, err));
});
};
export const removeReactionRequest = (announcementId, name) => ({
type: ANNOUNCEMENTS_REACTION_REMOVE_REQUEST,
id: announcementId,
name,
skipLoading: true,
});
export const removeReactionSuccess = (announcementId, name) => ({
type: ANNOUNCEMENTS_REACTION_REMOVE_SUCCESS,
id: announcementId,
name,
skipLoading: true,
});
export const removeReactionFail = (announcementId, name, error) => ({
type: ANNOUNCEMENTS_REACTION_REMOVE_FAIL,
id: announcementId,
name,
error,
skipLoading: true,
});
export const updateReaction = reaction => ({
type: ANNOUNCEMENTS_REACTION_UPDATE,
reaction,
});
export const toggleShowAnnouncements = () => ({
type: ANNOUNCEMENTS_TOGGLE_SHOW,
});
export const deleteAnnouncement = id => ({
type: ANNOUNCEMENTS_DELETE,
id,
});

View File

@ -0,0 +1,90 @@
import api, { getLinks } from '../api';
import { importFetchedStatuses } from './importer';
export const BOOKMARKED_STATUSES_FETCH_REQUEST = 'BOOKMARKED_STATUSES_FETCH_REQUEST';
export const BOOKMARKED_STATUSES_FETCH_SUCCESS = 'BOOKMARKED_STATUSES_FETCH_SUCCESS';
export const BOOKMARKED_STATUSES_FETCH_FAIL = 'BOOKMARKED_STATUSES_FETCH_FAIL';
export const BOOKMARKED_STATUSES_EXPAND_REQUEST = 'BOOKMARKED_STATUSES_EXPAND_REQUEST';
export const BOOKMARKED_STATUSES_EXPAND_SUCCESS = 'BOOKMARKED_STATUSES_EXPAND_SUCCESS';
export const BOOKMARKED_STATUSES_EXPAND_FAIL = 'BOOKMARKED_STATUSES_EXPAND_FAIL';
export function fetchBookmarkedStatuses() {
return (dispatch, getState) => {
if (getState().getIn(['status_lists', 'bookmarks', 'isLoading'])) {
return;
}
dispatch(fetchBookmarkedStatusesRequest());
api(getState).get('/api/v1/bookmarks').then(response => {
const next = getLinks(response).refs.find(link => link.rel === 'next');
dispatch(importFetchedStatuses(response.data));
dispatch(fetchBookmarkedStatusesSuccess(response.data, next ? next.uri : null));
}).catch(error => {
dispatch(fetchBookmarkedStatusesFail(error));
});
};
};
export function fetchBookmarkedStatusesRequest() {
return {
type: BOOKMARKED_STATUSES_FETCH_REQUEST,
};
};
export function fetchBookmarkedStatusesSuccess(statuses, next) {
return {
type: BOOKMARKED_STATUSES_FETCH_SUCCESS,
statuses,
next,
};
};
export function fetchBookmarkedStatusesFail(error) {
return {
type: BOOKMARKED_STATUSES_FETCH_FAIL,
error,
};
};
export function expandBookmarkedStatuses() {
return (dispatch, getState) => {
const url = getState().getIn(['status_lists', 'bookmarks', 'next'], null);
if (url === null || getState().getIn(['status_lists', 'bookmarks', 'isLoading'])) {
return;
}
dispatch(expandBookmarkedStatusesRequest());
api(getState).get(url).then(response => {
const next = getLinks(response).refs.find(link => link.rel === 'next');
dispatch(importFetchedStatuses(response.data));
dispatch(expandBookmarkedStatusesSuccess(response.data, next ? next.uri : null));
}).catch(error => {
dispatch(expandBookmarkedStatusesFail(error));
});
};
};
export function expandBookmarkedStatusesRequest() {
return {
type: BOOKMARKED_STATUSES_EXPAND_REQUEST,
};
};
export function expandBookmarkedStatusesSuccess(statuses, next) {
return {
type: BOOKMARKED_STATUSES_EXPAND_SUCCESS,
statuses,
next,
};
};
export function expandBookmarkedStatusesFail(error) {
return {
type: BOOKMARKED_STATUSES_EXPAND_FAIL,
error,
};
};

View File

@ -207,10 +207,11 @@ export function uploadCompose(files) {
return function (dispatch, getState) {
const uploadLimit = 4;
const media = getState().getIn(['compose', 'media_attachments']);
const pending = getState().getIn(['compose', 'pending_media_attachments']);
const progress = new Array(files.length).fill(0);
let total = Array.from(files).reduce((a, v) => a + v.size, 0);
if (files.length + media.size > uploadLimit) {
if (files.length + media.size + pending > uploadLimit) {
dispatch(showAlert(undefined, messages.uploadErrorLimit));
return;
}

View File

@ -10,6 +10,12 @@ const makeEmojiMap = record => record.emojis.reduce((obj, emoji) => {
return obj;
}, {});
export function searchTextFromRawStatus (status) {
const spoilerText = status.spoiler_text || '';
const searchContent = ([spoilerText, status.content].concat((status.poll && status.poll.options) ? status.poll.options.map(option => option.title) : [])).join('\n\n').replace(/<br\s*\/?>/g, '\n').replace(/<\/p><p>/g, '\n\n');
return domParser.parseFromString(searchContent, 'text/html').documentElement.textContent;
}
export function normalizeAccount(account) {
account = { ...account };
@ -70,7 +76,6 @@ export function normalizeStatus(status, normalOldStatus) {
export function normalizePoll(poll) {
const normalPoll = { ...poll };
const emojiMap = makeEmojiMap(normalPoll);
normalPoll.options = poll.options.map((option, index) => ({
@ -81,3 +86,12 @@ export function normalizePoll(poll) {
return normalPoll;
}
export function normalizeAnnouncement(announcement) {
const normalAnnouncement = { ...announcement };
const emojiMap = makeEmojiMap(normalAnnouncement);
normalAnnouncement.contentHtml = emojify(normalAnnouncement.content, emojiMap);
return normalAnnouncement;
}

View File

@ -33,6 +33,14 @@ export const UNPIN_REQUEST = 'UNPIN_REQUEST';
export const UNPIN_SUCCESS = 'UNPIN_SUCCESS';
export const UNPIN_FAIL = 'UNPIN_FAIL';
export const BOOKMARK_REQUEST = 'BOOKMARK_REQUEST';
export const BOOKMARK_SUCCESS = 'BOOKMARKED_SUCCESS';
export const BOOKMARK_FAIL = 'BOOKMARKED_FAIL';
export const UNBOOKMARK_REQUEST = 'UNBOOKMARKED_REQUEST';
export const UNBOOKMARK_SUCCESS = 'UNBOOKMARKED_SUCCESS';
export const UNBOOKMARK_FAIL = 'UNBOOKMARKED_FAIL';
export function reblog(status) {
return function (dispatch, getState) {
dispatch(reblogRequest(status));
@ -187,6 +195,78 @@ export function unfavouriteFail(status, error) {
};
};
export function bookmark(status) {
return function (dispatch, getState) {
dispatch(bookmarkRequest(status));
api(getState).post(`/api/v1/statuses/${status.get('id')}/bookmark`).then(function (response) {
dispatch(importFetchedStatus(response.data));
dispatch(bookmarkSuccess(status, response.data));
}).catch(function (error) {
dispatch(bookmarkFail(status, error));
});
};
};
export function unbookmark(status) {
return (dispatch, getState) => {
dispatch(unbookmarkRequest(status));
api(getState).post(`/api/v1/statuses/${status.get('id')}/unbookmark`).then(response => {
dispatch(importFetchedStatus(response.data));
dispatch(unbookmarkSuccess(status, response.data));
}).catch(error => {
dispatch(unbookmarkFail(status, error));
});
};
};
export function bookmarkRequest(status) {
return {
type: BOOKMARK_REQUEST,
status: status,
};
};
export function bookmarkSuccess(status, response) {
return {
type: BOOKMARK_SUCCESS,
status: status,
response: response,
};
};
export function bookmarkFail(status, error) {
return {
type: BOOKMARK_FAIL,
status: status,
error: error,
};
};
export function unbookmarkRequest(status) {
return {
type: UNBOOKMARK_REQUEST,
status: status,
};
};
export function unbookmarkSuccess(status, response) {
return {
type: UNBOOKMARK_SUCCESS,
status: status,
response: response,
};
};
export function unbookmarkFail(status, error) {
return {
type: UNBOOKMARK_FAIL,
status: status,
error: error,
};
};
export function fetchReblogs(id) {
return (dispatch, getState) => {
dispatch(fetchReblogsRequest(id));

View File

@ -14,6 +14,7 @@ import { unescapeHTML } from '../utils/html';
import { getFiltersRegex } from '../selectors';
import { usePendingItems as preferPendingItems } from 'mastodon/initial_state';
import compareId from 'mastodon/compare_id';
import { searchTextFromRawStatus } from 'mastodon/actions/importer/normalizer';
export const NOTIFICATIONS_UPDATE = 'NOTIFICATIONS_UPDATE';
export const NOTIFICATIONS_UPDATE_NOOP = 'NOTIFICATIONS_UPDATE_NOOP';
@ -60,7 +61,7 @@ export function updateNotifications(notification, intlMessages, intlLocale) {
if (notification.type === 'mention') {
const dropRegex = filters[0];
const regex = filters[1];
const searchIndex = notification.status.spoiler_text + '\n' + unescapeHTML(notification.status.content);
const searchIndex = searchTextFromRawStatus(notification.status);
if (dropRegex && dropRegex.test(searchIndex)) {
return;
@ -109,7 +110,7 @@ export function updateNotifications(notification, intlMessages, intlLocale) {
const excludeTypesFromSettings = state => state.getIn(['settings', 'notifications', 'shows']).filter(enabled => !enabled).keySeq().toJS();
const excludeTypesFromFilter = filter => {
const allTypes = ImmutableList(['follow', 'favourite', 'reblog', 'mention', 'poll']);
const allTypes = ImmutableList(['follow', 'follow_request', 'favourite', 'reblog', 'mention', 'poll']);
return allTypes.filterNot(item => item === filter).toJS();
};
@ -156,9 +157,9 @@ export function expandNotifications({ maxId } = {}, done = noOp) {
dispatch(expandNotificationsSuccess(response.data, next ? next.uri : null, isLoadingMore, isLoadingRecent, isLoadingRecent && preferPendingItems));
fetchRelatedRelationships(dispatch, response.data);
done();
}).catch(error => {
dispatch(expandNotificationsFail(error, isLoadingMore));
}).finally(() => {
done();
});
};
@ -187,6 +188,7 @@ export function expandNotificationsFail(error, isLoadingMore) {
type: NOTIFICATIONS_EXPAND_FAIL,
error,
skipLoading: !isLoadingMore,
skipAlert: !isLoadingMore,
};
};

View File

@ -26,8 +26,9 @@ export const STATUS_UNMUTE_REQUEST = 'STATUS_UNMUTE_REQUEST';
export const STATUS_UNMUTE_SUCCESS = 'STATUS_UNMUTE_SUCCESS';
export const STATUS_UNMUTE_FAIL = 'STATUS_UNMUTE_FAIL';
export const STATUS_REVEAL = 'STATUS_REVEAL';
export const STATUS_HIDE = 'STATUS_HIDE';
export const STATUS_REVEAL = 'STATUS_REVEAL';
export const STATUS_HIDE = 'STATUS_HIDE';
export const STATUS_COLLAPSE = 'STATUS_COLLAPSE';
export const REDRAFT = 'REDRAFT';
@ -320,3 +321,11 @@ export function revealStatus(ids) {
ids,
};
};
export function toggleStatusCollapse(id, isCollapsed) {
return {
type: STATUS_COLLAPSE,
id,
isCollapsed,
};
}

View File

@ -8,6 +8,12 @@ import {
} from './timelines';
import { updateNotifications, expandNotifications } from './notifications';
import { updateConversations } from './conversations';
import {
fetchAnnouncements,
updateAnnouncements,
updateReaction as updateAnnouncementsReaction,
deleteAnnouncement,
} from './announcements';
import { fetchFilters } from './filters';
import { getLocale } from '../locales';
@ -44,6 +50,15 @@ export function connectTimelineStream (timelineId, path, pollingRefresh = null,
case 'filters_changed':
dispatch(fetchFilters());
break;
case 'announcement':
dispatch(updateAnnouncements(JSON.parse(data.payload)));
break;
case 'announcement.reaction':
dispatch(updateAnnouncementsReaction(JSON.parse(data.payload)));
break;
case 'announcement.delete':
dispatch(deleteAnnouncement(data.payload));
break;
}
},
};
@ -51,7 +66,9 @@ export function connectTimelineStream (timelineId, path, pollingRefresh = null,
}
const refreshHomeTimelineAndNotification = (dispatch, done) => {
dispatch(expandHomeTimeline({}, () => dispatch(expandNotifications({}, done))));
dispatch(expandHomeTimeline({}, () =>
dispatch(expandNotifications({}, () =>
dispatch(fetchAnnouncements(done))))));
};
export const connectUserStream = () => connectTimelineStream('home', 'user', refreshHomeTimelineAndNotification);

View File

@ -98,9 +98,9 @@ export function expandTimeline(timelineId, path, params = {}, done = noOp) {
const next = getLinks(response).refs.find(link => link.rel === 'next');
dispatch(importFetchedStatuses(response.data));
dispatch(expandTimelineSuccess(timelineId, response.data, next ? next.uri : null, response.status === 206, isLoadingRecent, isLoadingMore, isLoadingRecent && preferPendingItems));
done();
}).catch(error => {
dispatch(expandTimelineFail(timelineId, error, isLoadingMore));
}).finally(() => {
done();
});
};

View File

@ -0,0 +1,65 @@
import React from 'react';
import PropTypes from 'prop-types';
import { FormattedNumber } from 'react-intl';
import TransitionMotion from 'react-motion/lib/TransitionMotion';
import spring from 'react-motion/lib/spring';
import { reduceMotion } from 'mastodon/initial_state';
export default class AnimatedNumber extends React.PureComponent {
static propTypes = {
value: PropTypes.number.isRequired,
};
state = {
direction: 1,
};
componentWillReceiveProps (nextProps) {
if (nextProps.value > this.props.value) {
this.setState({ direction: 1 });
} else if (nextProps.value < this.props.value) {
this.setState({ direction: -1 });
}
}
willEnter = () => {
const { direction } = this.state;
return { y: -1 * direction };
}
willLeave = () => {
const { direction } = this.state;
return { y: spring(1 * direction, { damping: 35, stiffness: 400 }) };
}
render () {
const { value } = this.props;
const { direction } = this.state;
if (reduceMotion) {
return <FormattedNumber value={value} />;
}
const styles = [{
key: `${value}`,
data: value,
style: { y: spring(0, { damping: 35, stiffness: 400 }) },
}];
return (
<TransitionMotion styles={styles} willEnter={this.willEnter} willLeave={this.willLeave}>
{items => (
<span className='animated-number'>
{items.map(({ key, data, style }) => (
<span key={key} style={{ position: (direction * style.y) > 0 ? 'absolute' : 'static', transform: `translateY(${style.y * 100}%)` }}><FormattedNumber value={data} /></span>
))}
</span>
)}
</TransitionMotion>
);
}
}

View File

@ -25,7 +25,7 @@ export default class AttachmentList extends ImmutablePureComponent {
return (
<li key={attachment.get('id')}>
<a href={displayUrl} target='_blank' rel='noopener'><Icon id='link' /> {filename(displayUrl)}</a>
<a href={displayUrl} target='_blank' rel='noopener noreferrer'><Icon id='link' /> {filename(displayUrl)}</a>
</li>
);
})}
@ -46,7 +46,7 @@ export default class AttachmentList extends ImmutablePureComponent {
return (
<li key={attachment.get('id')}>
<a href={displayUrl} target='_blank' rel='noopener'>{filename(displayUrl)}</a>
<a href={displayUrl} target='_blank' rel='noopener noreferrer'>{filename(displayUrl)}</a>
</li>
);
})}

View File

@ -33,6 +33,7 @@ class ColumnHeader extends React.PureComponent {
onPin: PropTypes.func,
onMove: PropTypes.func,
onClick: PropTypes.func,
appendContent: PropTypes.node,
};
state = {
@ -81,7 +82,7 @@ class ColumnHeader extends React.PureComponent {
}
render () {
const { title, icon, active, children, pinned, multiColumn, extraButton, showBackButton, intl: { formatMessage }, placeholder } = this.props;
const { title, icon, active, children, pinned, multiColumn, extraButton, showBackButton, intl: { formatMessage }, placeholder, appendContent } = this.props;
const { collapsed, animating } = this.state;
const wrapperClassName = classNames('column-header__wrapper', {
@ -172,6 +173,8 @@ class ColumnHeader extends React.PureComponent {
{(!collapsed || animating) && collapsedContent}
</div>
</div>
{appendContent}
</div>
);

View File

@ -143,7 +143,7 @@ class DropdownMenu extends React.PureComponent {
return (
<li className='dropdown-menu__item' key={`${text}-${i}`}>
<a href={href} target={target} data-method={method} rel='noopener' role='button' tabIndex='0' ref={i === 0 ? this.setFocusRef : null} onClick={this.handleClick} onKeyPress={this.handleItemKeyPress} data-index={i}>
<a href={href} target={target} data-method={method} rel='noopener noreferrer' role='button' tabIndex='0' ref={i === 0 ? this.setFocusRef : null} onClick={this.handleClick} onKeyPress={this.handleItemKeyPress} data-index={i}>
{text}
</a>
</li>

View File

@ -58,7 +58,7 @@ export default class ErrorBoundary extends React.PureComponent {
<div>
<p className='error-boundary__error'><FormattedMessage id='error.unexpected_crash.explanation' defaultMessage='Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.' /></p>
<p><FormattedMessage id='error.unexpected_crash.next_steps' defaultMessage='Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.' /></p>
<p className='error-boundary__footer'>Mastodon v{version} · <a href={source_url} rel='noopener' target='_blank'><FormattedMessage id='errors.unexpected_crash.report_issue' defaultMessage='Report issue' /></a> · <button onClick={this.handleCopyStackTrace} className={copied && 'copied'}><FormattedMessage id='errors.unexpected_crash.copy_stacktrace' defaultMessage='Copy stacktrace to clipboard' /></button></p>
<p className='error-boundary__footer'>Mastodon v{version} · <a href={source_url} rel='noopener noreferrer' target='_blank'><FormattedMessage id='errors.unexpected_crash.report_issue' defaultMessage='Report issue' /></a> · <button onClick={this.handleCopyStackTrace} className={copied ? 'copied' : ''}><FormattedMessage id='errors.unexpected_crash.copy_stacktrace' defaultMessage='Copy stacktrace to clipboard' /></button></p>
</div>
</div>
);

View File

@ -1,6 +1,4 @@
import React from 'react';
import Motion from '../features/ui/util/optional_motion';
import spring from 'react-motion/lib/spring';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import Icon from 'mastodon/components/icon';
@ -37,6 +35,21 @@ export default class IconButton extends React.PureComponent {
tabIndex: '0',
};
state = {
activate: false,
deactivate: false,
}
componentWillReceiveProps (nextProps) {
if (!nextProps.animate) return;
if (this.props.active && !nextProps.active) {
this.setState({ activate: false, deactivate: true });
} else if (!this.props.active && nextProps.active) {
this.setState({ activate: true, deactivate: false });
}
}
handleClick = (e) => {
e.preventDefault();
@ -75,7 +88,6 @@ export default class IconButton extends React.PureComponent {
const {
active,
animate,
className,
disabled,
expanded,
@ -87,57 +99,37 @@ export default class IconButton extends React.PureComponent {
title,
} = this.props;
const {
activate,
deactivate,
} = this.state;
const classes = classNames(className, 'icon-button', {
active,
disabled,
inverted,
activate,
deactivate,
overlayed: overlay,
});
if (!animate) {
// Perf optimization: avoid unnecessary <Motion> components unless
// we actually need to animate.
return (
<button
aria-label={title}
aria-pressed={pressed}
aria-expanded={expanded}
title={title}
className={classes}
onClick={this.handleClick}
onMouseDown={this.handleMouseDown}
onKeyDown={this.handleKeyDown}
onKeyPress={this.handleKeyPress}
style={style}
tabIndex={tabIndex}
disabled={disabled}
>
<Icon id={icon} fixedWidth aria-hidden='true' />
</button>
);
}
return (
<Motion defaultStyle={{ rotate: active ? -360 : 0 }} style={{ rotate: animate ? spring(active ? -360 : 0, { stiffness: 120, damping: 7 }) : 0 }}>
{({ rotate }) => (
<button
aria-label={title}
aria-pressed={pressed}
aria-expanded={expanded}
title={title}
className={classes}
onClick={this.handleClick}
onMouseDown={this.handleMouseDown}
onKeyDown={this.handleKeyDown}
onKeyPress={this.handleKeyPress}
style={style}
tabIndex={tabIndex}
disabled={disabled}
>
<Icon id={icon} style={{ transform: `rotate(${rotate}deg)` }} fixedWidth aria-hidden='true' />
</button>
)}
</Motion>
<button
aria-label={title}
aria-pressed={pressed}
aria-expanded={expanded}
title={title}
className={classes}
onClick={this.handleClick}
onMouseDown={this.handleMouseDown}
onKeyDown={this.handleKeyDown}
onKeyPress={this.handleKeyPress}
style={style}
tabIndex={tabIndex}
disabled={disabled}
>
<Icon id={icon} fixedWidth aria-hidden='true' />
</button>
);
}

View File

@ -6,7 +6,7 @@ import IconButton from './icon_button';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import { isIOS } from '../is_mobile';
import classNames from 'classnames';
import { autoPlayGif, displayMedia, useBlurhash } from '../initial_state';
import { autoPlayGif, cropImages, displayMedia, useBlurhash } from '../initial_state';
import { decode } from 'blurhash';
const messages = defineMessages({
@ -23,6 +23,7 @@ class Item extends React.PureComponent {
onClick: PropTypes.func.isRequired,
displayWidth: PropTypes.number,
visible: PropTypes.bool.isRequired,
autoplay: PropTypes.bool,
};
static defaultProps = {
@ -48,9 +49,13 @@ class Item extends React.PureComponent {
}
}
getAutoPlay() {
return this.props.autoplay || autoPlayGif;
}
hoverToPlay () {
const { attachment } = this.props;
return !autoPlayGif && attachment.get('type') === 'gifv';
return !this.getAutoPlay() && attachment.get('type') === 'gifv';
}
handleClick = (e) => {
@ -159,7 +164,7 @@ class Item extends React.PureComponent {
if (attachment.get('type') === 'unknown') {
return (
<div className={classNames('media-gallery__item', { standalone })} key={attachment.get('id')} style={{ left: left, top: top, right: right, bottom: bottom, width: `${width}%`, height: `${height}%` }}>
<a className='media-gallery__item-thumbnail' href={attachment.get('remote_url') || attachment.get('url')} target='_blank' style={{ cursor: 'pointer' }} title={attachment.get('description')}>
<a className='media-gallery__item-thumbnail' href={attachment.get('remote_url') || attachment.get('url')} style={{ cursor: 'pointer' }} title={attachment.get('description')} target='_blank' rel='noopener noreferrer'>
<canvas width={32} height={32} ref={this.setCanvasRef} className='media-gallery__preview' />
</a>
</div>
@ -187,6 +192,7 @@ class Item extends React.PureComponent {
href={attachment.get('remote_url') || originalUrl}
onClick={this.handleClick}
target='_blank'
rel='noopener noreferrer'
>
<img
src={previewUrl}
@ -200,7 +206,7 @@ class Item extends React.PureComponent {
</a>
);
} else if (attachment.get('type') === 'gifv') {
const autoPlay = !isIOS() && autoPlayGif;
const autoPlay = !isIOS() && this.getAutoPlay();
thumbnail = (
<div className={classNames('media-gallery__gifv', { autoplay: autoPlay })}>
@ -247,6 +253,7 @@ class MediaGallery extends React.PureComponent {
defaultWidth: PropTypes.number,
cacheWidth: PropTypes.func,
visible: PropTypes.bool,
autoplay: PropTypes.bool,
onToggleVisibility: PropTypes.func,
};
@ -280,7 +287,7 @@ class MediaGallery extends React.PureComponent {
}
handleRef = (node) => {
if (node /*&& this.isStandaloneEligible()*/) {
if (node) {
// offsetWidth triggers a layout, so only calculate when we need to
if (this.props.cacheWidth) this.props.cacheWidth(node.offsetWidth);
@ -290,13 +297,13 @@ class MediaGallery extends React.PureComponent {
}
}
isStandaloneEligible() {
const { media, standalone } = this.props;
return standalone && media.size === 1 && media.getIn([0, 'meta', 'small', 'aspect']);
isFullSizeEligible() {
const { media } = this.props;
return media.size === 1 && media.getIn([0, 'meta', 'small', 'aspect']);
}
render () {
const { media, intl, sensitive, height, defaultWidth } = this.props;
const { media, intl, sensitive, height, defaultWidth, standalone, autoplay } = this.props;
const { visible } = this.state;
const width = this.state.width || defaultWidth;
@ -305,7 +312,7 @@ class MediaGallery extends React.PureComponent {
const style = {};
if (this.isStandaloneEligible()) {
if (this.isFullSizeEligible() && (standalone || !cropImages)) {
if (width) {
style.height = width / this.props.media.getIn([0, 'meta', 'small', 'aspect']);
}
@ -318,10 +325,10 @@ class MediaGallery extends React.PureComponent {
const size = media.take(4).size;
const uncached = media.every(attachment => attachment.get('type') === 'unknown');
if (this.isStandaloneEligible()) {
children = <Item standalone onClick={this.handleClick} attachment={media.get(0)} displayWidth={width} visible={visible} />;
if (standalone && this.isFullSizeEligible()) {
children = <Item standalone autoplay={autoplay} onClick={this.handleClick} attachment={media.get(0)} displayWidth={width} visible={visible} />;
} else {
children = media.take(4).map((attachment, i) => <Item key={attachment.get('id')} onClick={this.handleClick} attachment={attachment} index={i} size={size} displayWidth={width} visible={visible || uncached} />);
children = media.take(4).map((attachment, i) => <Item key={attachment.get('id')} autoplay={autoplay} onClick={this.handleClick} attachment={attachment} index={i} size={size} displayWidth={width} visible={visible || uncached} />);
}
if (uncached) {

View File

@ -1,5 +1,6 @@
import React from 'react';
import PropTypes from 'prop-types';
import 'wicg-inert';
export default class ModalRoot extends React.PureComponent {
@ -55,15 +56,21 @@ export default class ModalRoot extends React.PureComponent {
} else if (!nextProps.children) {
this.setState({ revealed: false });
}
if (!nextProps.children && !!this.props.children) {
this.activeElement.focus();
this.activeElement = null;
}
}
componentDidUpdate (prevProps) {
if (!this.props.children && !!prevProps.children) {
this.getSiblings().forEach(sibling => sibling.removeAttribute('inert'));
// Because of the wicg-inert polyfill, the activeElement may not be
// immediately selectable, we have to wait for observers to run, as
// described in https://github.com/WICG/inert#performance-and-gotchas
Promise.resolve().then(() => {
this.activeElement.focus();
this.activeElement = null;
}).catch((error) => {
console.error(error);
});
}
if (this.props.children) {
requestAnimationFrame(() => {

View File

@ -39,7 +39,8 @@ class Poll extends ImmutablePureComponent {
static getDerivedStateFromProps (props, state) {
const { poll, intl } = props;
const expired = poll.get('expired') || (new Date(poll.get('expires_at'))).getTime() < intl.now();
const expires_at = poll.get('expires_at');
const expired = poll.get('expired') || expires_at !== null && (new Date(expires_at)).getTime() < intl.now();
return (expired === state.expired) ? null : { expired };
}
@ -66,9 +67,7 @@ class Poll extends ImmutablePureComponent {
}
}
handleOptionChange = e => {
const { target: { value } } = e;
_toggleOption = value => {
if (this.props.poll.get('multiple')) {
const tmp = { ...this.state.selected };
if (tmp[value]) {
@ -82,8 +81,20 @@ class Poll extends ImmutablePureComponent {
tmp[value] = true;
this.setState({ selected: tmp });
}
}
handleOptionChange = ({ target: { value } }) => {
this._toggleOption(value);
};
handleOptionKeyPress = (e) => {
if (e.key === 'Enter' || e.key === ' ') {
this._toggleOption(e.target.getAttribute('data-index'));
e.stopPropagation();
e.preventDefault();
}
}
handleVote = () => {
if (this.props.disabled) {
return;
@ -134,7 +145,17 @@ class Poll extends ImmutablePureComponent {
disabled={disabled}
/>
{!showResults && <span className={classNames('poll__input', { checkbox: poll.get('multiple'), active })} />}
{!showResults && (
<span
className={classNames('poll__input', { checkbox: poll.get('multiple'), active })}
tabIndex='0'
role={poll.get('multiple') ? 'checkbox' : 'radio'}
onKeyPress={this.handleOptionKeyPress}
aria-checked={active}
aria-label={option.get('title')}
data-index={optionIndex}
/>
)}
{showResults && <span className='poll__number'>
{!!voted && <Icon id='check' className='poll__vote__mark' title={intl.formatMessage(messages.voted)} />}
{Math.round(percent)}%

View File

@ -3,6 +3,7 @@ import { injectIntl, defineMessages } from 'react-intl';
import PropTypes from 'prop-types';
const messages = defineMessages({
today: { id: 'relative_time.today', defaultMessage: 'today' },
just_now: { id: 'relative_time.just_now', defaultMessage: 'now' },
seconds: { id: 'relative_time.seconds', defaultMessage: '{number}s' },
minutes: { id: 'relative_time.minutes', defaultMessage: '{number}m' },
@ -65,12 +66,14 @@ const getUnitDelay = units => {
}
};
export const timeAgoString = (intl, date, now, year) => {
export const timeAgoString = (intl, date, now, year, timeGiven = true) => {
const delta = now - date.getTime();
let relativeTime;
if (delta < 10 * SECOND) {
if (delta < DAY && !timeGiven) {
relativeTime = intl.formatMessage(messages.today);
} else if (delta < 10 * SECOND) {
relativeTime = intl.formatMessage(messages.just_now);
} else if (delta < 7 * DAY) {
if (delta < MINUTE) {
@ -91,12 +94,14 @@ export const timeAgoString = (intl, date, now, year) => {
return relativeTime;
};
const timeRemainingString = (intl, date, now) => {
const timeRemainingString = (intl, date, now, timeGiven = true) => {
const delta = date.getTime() - now;
let relativeTime;
if (delta < 10 * SECOND) {
if (delta < DAY && !timeGiven) {
relativeTime = intl.formatMessage(messages.today);
} else if (delta < 10 * SECOND) {
relativeTime = intl.formatMessage(messages.moments_remaining);
} else if (delta < MINUTE) {
relativeTime = intl.formatMessage(messages.seconds_remaining, { number: Math.floor(delta / SECOND) });
@ -173,8 +178,9 @@ class RelativeTimestamp extends React.Component {
render () {
const { timestamp, intl, year, futureDate } = this.props;
const timeGiven = timestamp.includes('T');
const date = new Date(timestamp);
const relativeTime = futureDate ? timeRemainingString(intl, date, this.state.now) : timeAgoString(intl, date, this.state.now, year);
const relativeTime = futureDate ? timeRemainingString(intl, date, this.state.now, timeGiven) : timeAgoString(intl, date, this.state.now, year, timeGiven);
return (
<time dateTime={timestamp} title={intl.formatDate(date, dateFormatOptions)}>

View File

@ -208,10 +208,13 @@ export default class ScrollableList extends PureComponent {
}
attachIntersectionObserver () {
this.intersectionObserverWrapper.connect({
let nodeOptions = {
root: this.node,
rootMargin: '300% 0px',
});
};
this.intersectionObserverWrapper
.connect(this.props.bindToDocument ? {} : nodeOptions);
}
detachIntersectionObserver () {
@ -293,7 +296,7 @@ export default class ScrollableList extends PureComponent {
</div>
</div>
);
} else if (isLoading || childrenCount > 0 || hasMore || !emptyMessage) {
} else if (isLoading || childrenCount > 0 || numPending > 0 || hasMore || !emptyMessage) {
scrollableArea = (
<div className={classNames('scrollable', { fullscreen })} ref={this.setRef} onMouseMove={this.handleMouseMove}>
<div role='feed' className='item-list'>

View File

@ -76,6 +76,7 @@ class Status extends ImmutablePureComponent {
onEmbed: PropTypes.func,
onHeightChange: PropTypes.func,
onToggleHidden: PropTypes.func,
onToggleCollapsed: PropTypes.func,
muted: PropTypes.bool,
hidden: PropTypes.bool,
unread: PropTypes.bool,
@ -102,19 +103,6 @@ class Status extends ImmutablePureComponent {
statusId: undefined,
};
// Track height changes we know about to compensate scrolling
componentDidMount () {
this.didShowCard = !this.props.muted && !this.props.hidden && this.props.status && this.props.status.get('card');
}
getSnapshotBeforeUpdate () {
if (this.props.getScrollPosition) {
return this.props.getScrollPosition();
} else {
return null;
}
}
static getDerivedStateFromProps(nextProps, prevState) {
if (nextProps.status && nextProps.status.get('id') !== prevState.statusId) {
return {
@ -126,32 +114,6 @@ class Status extends ImmutablePureComponent {
}
}
// Compensate height changes
componentDidUpdate (prevProps, prevState, snapshot) {
const doShowCard = !this.props.muted && !this.props.hidden && this.props.status && this.props.status.get('card');
if (doShowCard && !this.didShowCard) {
this.didShowCard = true;
if (snapshot !== null && this.props.updateScrollBottom) {
if (this.node && this.node.offsetTop < snapshot.top) {
this.props.updateScrollBottom(snapshot.height - snapshot.top);
}
}
}
}
componentWillUnmount() {
if (this.node && this.props.getScrollPosition) {
const position = this.props.getScrollPosition();
if (position !== null && this.node.offsetTop < position.top) {
requestAnimationFrame(() => {
this.props.updateScrollBottom(position.height - position.top);
});
}
}
}
handleToggleMediaVisibility = () => {
this.setState({ showMedia: !this.state.showMedia });
}
@ -196,7 +158,11 @@ class Status extends ImmutablePureComponent {
handleExpandedToggle = () => {
this.props.onToggleHidden(this._properStatus());
};
}
handleCollapsedToggle = isCollapsed => {
this.props.onToggleCollapsed(this._properStatus(), isCollapsed);
}
renderLoadingMediaGallery () {
return <div className='media-gallery' style={{ height: '110px' }} />;
@ -214,6 +180,23 @@ class Status extends ImmutablePureComponent {
this.props.onOpenVideo(media, startTime);
}
handleHotkeyOpenMedia = e => {
const { onOpenMedia, onOpenVideo } = this.props;
const status = this._properStatus();
e.preventDefault();
if (status.get('media_attachments').size > 0) {
if (status.getIn(['media_attachments', 0, 'type']) === 'audio') {
// TODO: toggle play/paused?
} else if (status.getIn(['media_attachments', 0, 'type']) === 'video') {
onOpenVideo(status.getIn(['media_attachments', 0]), 0);
} else {
onOpenMedia(status.get('media_attachments'), 0);
}
}
}
handleHotkeyReply = e => {
e.preventDefault();
this.props.onReply(this._properStatus(), this.context.router.history);
@ -293,6 +276,7 @@ class Status extends ImmutablePureComponent {
moveDown: this.handleHotkeyMoveDown,
toggleHidden: this.handleHotkeyToggleHidden,
toggleSensitive: this.handleHotkeyToggleSensitive,
openMedia: this.handleHotkeyOpenMedia,
};
if (hidden) {
@ -437,9 +421,9 @@ class Status extends ImmutablePureComponent {
<div className={classNames('status', `status-${status.get('visibility')}`, { 'status-reply': !!status.get('in_reply_to_id'), muted: this.props.muted, read: unread === false })} data-id={status.get('id')}>
<div className='status__expand' onClick={this.handleExpandClick} role='presentation' />
<div className='status__info'>
<a href={status.get('url')} className='status__relative-time' target='_blank' rel='noopener'><RelativeTimestamp timestamp={status.get('created_at')} /></a>
<a href={status.get('url')} className='status__relative-time' target='_blank' rel='noopener noreferrer'><RelativeTimestamp timestamp={status.get('created_at')} /></a>
<a onClick={this.handleAccountClick} target='_blank' data-id={status.getIn(['account', 'id'])} href={status.getIn(['account', 'url'])} title={status.getIn(['account', 'acct'])} className='status__display-name'>
<a onClick={this.handleAccountClick} data-id={status.getIn(['account', 'id'])} href={status.getIn(['account', 'url'])} title={status.getIn(['account', 'acct'])} className='status__display-name' target='_blank' rel='noopener noreferrer'>
<div className='status__avatar'>
{statusAvatar}
</div>
@ -448,7 +432,7 @@ class Status extends ImmutablePureComponent {
</a>
</div>
<StatusContent status={status} onClick={this.handleClick} expanded={!status.get('hidden')} onExpandedToggle={this.handleExpandedToggle} collapsable />
<StatusContent status={status} onClick={this.handleClick} expanded={!status.get('hidden')} onExpandedToggle={this.handleExpandedToggle} collapsable onCollapsedToggle={this.handleCollapsedToggle} />
{media}

View File

@ -1,5 +1,6 @@
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux';
import PropTypes from 'prop-types';
import IconButton from './icon_button';
import DropdownMenuContainer from '../containers/dropdown_menu_container';
@ -24,6 +25,8 @@ const messages = defineMessages({
cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' },
local_only: { id: 'status.local_only', defaultMessage: 'This post is only visible by other users of your instance' },
favourite: { id: 'status.favourite', defaultMessage: 'Favourite' },
bookmark: { id: 'status.bookmark', defaultMessage: 'Bookmark' },
removeBookmark: { id: 'status.remove_bookmark', defaultMessage: 'Remove bookmark' },
open: { id: 'status.open', defaultMessage: 'Expand this status' },
report: { id: 'status.report', defaultMessage: 'Report @{name}' },
muteConversation: { id: 'status.mute_conversation', defaultMessage: 'Mute conversation' },
@ -34,6 +37,10 @@ const messages = defineMessages({
admin_account: { id: 'status.admin_account', defaultMessage: 'Open moderation interface for @{name}' },
admin_status: { id: 'status.admin_status', defaultMessage: 'Open this status in the moderation interface' },
copy: { id: 'status.copy', defaultMessage: 'Copy link to status' },
blockDomain: { id: 'account.block_domain', defaultMessage: 'Hide everything from {domain}' },
unblockDomain: { id: 'account.unblock_domain', defaultMessage: 'Unhide {domain}' },
unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },
unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },
});
const obfuscatedCount = count => {
@ -46,7 +53,12 @@ const obfuscatedCount = count => {
}
};
export default @injectIntl
const mapStateToProps = (state, { status }) => ({
relationship: state.getIn(['relationships', status.getIn(['account', 'id'])]),
});
export default @connect(mapStateToProps)
@injectIntl
class StatusActionBar extends ImmutablePureComponent {
static contextTypes = {
@ -55,6 +67,7 @@ class StatusActionBar extends ImmutablePureComponent {
static propTypes = {
status: ImmutablePropTypes.map.isRequired,
relationship: ImmutablePropTypes.map,
onReply: PropTypes.func,
onFavourite: PropTypes.func,
onReblog: PropTypes.func,
@ -62,11 +75,16 @@ class StatusActionBar extends ImmutablePureComponent {
onDirect: PropTypes.func,
onMention: PropTypes.func,
onMute: PropTypes.func,
onUnmute: PropTypes.func,
onBlock: PropTypes.func,
onUnblock: PropTypes.func,
onBlockDomain: PropTypes.func,
onUnblockDomain: PropTypes.func,
onReport: PropTypes.func,
onEmbed: PropTypes.func,
onMuteConversation: PropTypes.func,
onPin: PropTypes.func,
onBookmark: PropTypes.func,
withDismiss: PropTypes.bool,
intl: PropTypes.object.isRequired,
};
@ -75,6 +93,7 @@ class StatusActionBar extends ImmutablePureComponent {
// evaluate to false. See react-immutable-pure-component for usage.
updateOnProps = [
'status',
'relationship',
'withDismiss',
]
@ -115,6 +134,10 @@ class StatusActionBar extends ImmutablePureComponent {
window.open(`/interact/${this.props.status.get('id')}?type=${type}`, 'mastodon-intent', 'width=445,height=600,resizable=no,menubar=no,status=no,scrollbars=yes');
}
handleBookmarkClick = () => {
this.props.onBookmark(this.props.status);
}
handleDeleteClick = () => {
this.props.onDelete(this.props.status, this.context.router.history);
}
@ -136,11 +159,39 @@ class StatusActionBar extends ImmutablePureComponent {
}
handleMuteClick = () => {
this.props.onMute(this.props.status.get('account'));
const { status, relationship, onMute, onUnmute } = this.props;
const account = status.get('account');
if (relationship && relationship.get('muting')) {
onUnmute(account);
} else {
onMute(account);
}
}
handleBlockClick = () => {
this.props.onBlock(this.props.status);
const { status, relationship, onBlock, onUnblock } = this.props;
const account = status.get('account');
if (relationship && relationship.get('blocking')) {
onUnblock(account);
} else {
onBlock(status);
}
}
handleBlockDomain = () => {
const { status, onBlockDomain } = this.props;
const account = status.get('account');
onBlockDomain(account.get('acct').split('@')[1]);
}
handleUnblockDomain = () => {
const { status, onUnblockDomain } = this.props;
const account = status.get('account');
onUnblockDomain(account.get('acct').split('@')[1]);
}
handleOpen = () => {
@ -179,11 +230,12 @@ class StatusActionBar extends ImmutablePureComponent {
}
render () {
const { status, intl, withDismiss } = this.props;
const { status, relationship, intl, withDismiss } = this.props;
const mutingConversation = status.get('muted');
const anonymousAccess = !me;
const publicStatus = ['public', 'unlisted'].includes(status.get('visibility'));
const account = status.get('account');
const federated = !status.get('local_only');
let menu = [];
@ -198,6 +250,7 @@ class StatusActionBar extends ImmutablePureComponent {
menu.push({ text: intl.formatMessage(messages.embed), action: this.handleEmbed });
}
menu.push({ text: intl.formatMessage(status.get('bookmarked') ? messages.removeBookmark : messages.bookmark), action: this.handleBookmarkClick });
menu.push(null);
if (status.getIn(['account', 'id']) === me || withDismiss) {
@ -217,16 +270,39 @@ class StatusActionBar extends ImmutablePureComponent {
menu.push({ text: intl.formatMessage(messages.delete), action: this.handleDeleteClick });
menu.push({ text: intl.formatMessage(messages.redraft), action: this.handleRedraftClick });
} else {
menu.push({ text: intl.formatMessage(messages.mention, { name: status.getIn(['account', 'username']) }), action: this.handleMentionClick });
menu.push({ text: intl.formatMessage(messages.direct, { name: status.getIn(['account', 'username']) }), action: this.handleDirectClick });
menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.handleMentionClick });
menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.handleDirectClick });
menu.push(null);
menu.push({ text: intl.formatMessage(messages.mute, { name: status.getIn(['account', 'username']) }), action: this.handleMuteClick });
menu.push({ text: intl.formatMessage(messages.block, { name: status.getIn(['account', 'username']) }), action: this.handleBlockClick });
menu.push({ text: intl.formatMessage(messages.report, { name: status.getIn(['account', 'username']) }), action: this.handleReport });
if (relationship && relationship.get('muting')) {
menu.push({ text: intl.formatMessage(messages.unmute, { name: account.get('username') }), action: this.handleMuteClick });
} else {
menu.push({ text: intl.formatMessage(messages.mute, { name: account.get('username') }), action: this.handleMuteClick });
}
if (relationship && relationship.get('blocking')) {
menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.handleBlockClick });
} else {
menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.handleBlockClick });
}
menu.push({ text: intl.formatMessage(messages.report, { name: account.get('username') }), action: this.handleReport });
if (account.get('acct') !== account.get('username')) {
const domain = account.get('acct').split('@')[1];
menu.push(null);
if (relationship && relationship.get('domain_blocking')) {
menu.push({ text: intl.formatMessage(messages.unblockDomain, { domain }), action: this.handleUnblockDomain });
} else {
menu.push({ text: intl.formatMessage(messages.blockDomain, { domain }), action: this.handleBlockDomain });
}
}
if (isStaff) {
menu.push(null);
menu.push({ text: intl.formatMessage(messages.admin_account, { name: status.getIn(['account', 'username']) }), href: `/admin/accounts/${status.getIn(['account', 'id'])}` });
menu.push({ text: intl.formatMessage(messages.admin_account, { name: account.get('username') }), href: `/admin/accounts/${status.getIn(['account', 'id'])}` });
menu.push({ text: intl.formatMessage(messages.admin_status), href: `/admin/accounts/${status.getIn(['account', 'id'])}/statuses/${status.get('id')}` });
}
}
@ -245,7 +321,7 @@ class StatusActionBar extends ImmutablePureComponent {
replyTitle = intl.formatMessage(messages.replyAll);
}
const shareButton = ('share' in navigator) && status.get('visibility') === 'public' && federated && (
const shareButton = ('share' in navigator) && publicStatus && federated && (
<IconButton className='status__action-bar-button' title={intl.formatMessage(messages.share)} icon='share-alt' onClick={this.handleShareClick} />
);

View File

@ -23,11 +23,11 @@ export default class StatusContent extends React.PureComponent {
onExpandedToggle: PropTypes.func,
onClick: PropTypes.func,
collapsable: PropTypes.bool,
onCollapsedToggle: PropTypes.func,
};
state = {
hidden: true,
collapsed: null, // `collapsed: null` indicates that an element doesn't need collapsing, while `true` or `false` indicates that it does (and is/isn't).
};
_updateStatusLinks () {
@ -59,17 +59,19 @@ export default class StatusContent extends React.PureComponent {
}
link.setAttribute('target', '_blank');
link.setAttribute('rel', 'noopener');
link.setAttribute('rel', 'noopener noreferrer');
}
if (
this.props.collapsable
&& this.props.onClick
&& this.state.collapsed === null
&& node.clientHeight > MAX_HEIGHT
&& this.props.status.get('spoiler_text').length === 0
) {
this.setState({ collapsed: true });
if (this.props.status.get('collapsed', null) === null) {
let collapsed =
this.props.collapsable
&& this.props.onClick
&& node.clientHeight > MAX_HEIGHT
&& this.props.status.get('spoiler_text').length === 0;
if(this.props.onCollapsedToggle) this.props.onCollapsedToggle(collapsed);
this.props.status.set('collapsed', collapsed);
}
}
@ -178,6 +180,7 @@ export default class StatusContent extends React.PureComponent {
}
const hidden = this.props.onExpandedToggle ? !this.props.expanded : this.state.hidden;
const renderReadMore = this.props.onClick && status.get('collapsed');
const content = { __html: status.get('contentHtml') };
const spoilerContent = { __html: status.get('spoilerHtml') };
@ -185,7 +188,7 @@ export default class StatusContent extends React.PureComponent {
const classNames = classnames('status__content', {
'status__content--with-action': this.props.onClick && this.context.router,
'status__content--with-spoiler': status.get('spoiler_text').length > 0,
'status__content--collapsed': this.state.collapsed === true,
'status__content--collapsed': renderReadMore,
});
if (isRtl(status.get('search_index'))) {
@ -249,7 +252,7 @@ export default class StatusContent extends React.PureComponent {
</div>,
];
if (this.state.collapsed) {
if (renderReadMore) {
output.push(readMoreButton);
}

View File

@ -1,4 +1,5 @@
import { openDropdownMenu, closeDropdownMenu } from '../actions/dropdown_menu';
import { fetchRelationships } from 'mastodon/actions/accounts';
import { openModal, closeModal } from '../actions/modal';
import { connect } from 'react-redux';
import DropdownMenu from '../components/dropdown_menu';
@ -13,12 +14,17 @@ const mapStateToProps = state => ({
const mapDispatchToProps = (dispatch, { status, items }) => ({
onOpen(id, onItemClick, dropdownPlacement, keyboard) {
if (status) {
dispatch(fetchRelationships([status.getIn(['account', 'id'])]));
}
dispatch(isUserTouching() ? openModal('ACTIONS', {
status,
actions: items,
onClick: onItemClick,
}) : openDropdownMenu(id, dropdownPlacement, keyboard));
},
onClose(id) {
dispatch(closeModal('ACTIONS'));
dispatch(closeDropdownMenu(id));

View File

@ -1,3 +1,4 @@
import React from 'react';
import { connect } from 'react-redux';
import Status from '../components/status';
import { makeGetStatus } from '../selectors';
@ -9,8 +10,10 @@ import {
import {
reblog,
favourite,
bookmark,
unreblog,
unfavourite,
unbookmark,
pin,
unpin,
} from '../actions/interactions';
@ -20,12 +23,21 @@ import {
deleteStatus,
hideStatus,
revealStatus,
toggleStatusCollapse,
} from '../actions/statuses';
import {
unmuteAccount,
unblockAccount,
} from '../actions/accounts';
import {
blockDomain,
unblockDomain,
} from '../actions/domain_blocks';
import { initMuteModal } from '../actions/mutes';
import { initBlockModal } from '../actions/blocks';
import { initReport } from '../actions/reports';
import { openModal } from '../actions/modal';
import { defineMessages, injectIntl } from 'react-intl';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import { boostModal, deleteModal } from '../initial_state';
import { showAlertForError } from '../actions/alerts';
@ -36,6 +48,7 @@ const messages = defineMessages({
redraftMessage: { id: 'confirmations.redraft.message', defaultMessage: 'Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.' },
replyConfirm: { id: 'confirmations.reply.confirm', defaultMessage: 'Reply' },
replyMessage: { id: 'confirmations.reply.message', defaultMessage: 'Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?' },
blockDomainConfirm: { id: 'confirmations.domain_block.confirm', defaultMessage: 'Hide entire domain' },
});
const makeMapStateToProps = () => {
@ -90,6 +103,14 @@ const mapDispatchToProps = (dispatch, { intl }) => ({
}
},
onBookmark (status) {
if (status.get('bookmarked')) {
dispatch(unbookmark(status));
} else {
dispatch(bookmark(status));
}
},
onPin (status) {
if (status.get('pinned')) {
dispatch(unpin(status));
@ -138,6 +159,10 @@ const mapDispatchToProps = (dispatch, { intl }) => ({
dispatch(initBlockModal(account));
},
onUnblock (account) {
dispatch(unblockAccount(account.get('id')));
},
onReport (status) {
dispatch(initReport(status.get('account'), status));
},
@ -146,6 +171,10 @@ const mapDispatchToProps = (dispatch, { intl }) => ({
dispatch(initMuteModal(account));
},
onUnmute (account) {
dispatch(unmuteAccount(account.get('id')));
},
onMuteConversation (status) {
if (status.get('muted')) {
dispatch(unmuteStatus(status.get('id')));
@ -162,6 +191,22 @@ const mapDispatchToProps = (dispatch, { intl }) => ({
}
},
onToggleCollapsed (status, isCollapsed) {
dispatch(toggleStatusCollapse(status.get('id'), isCollapsed));
},
onBlockDomain (domain) {
dispatch(openModal('CONFIRM', {
message: <FormattedMessage id='confirmations.domain_block.message' defaultMessage='Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.' values={{ domain: <strong>{domain}</strong> }} />,
confirm: intl.formatMessage(messages.blockDomainConfirm),
onConfirm: () => dispatch(blockDomain(domain)),
}));
},
onUnblockDomain (domain) {
dispatch(unblockDomain(domain));
},
});
export default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Status));

View File

@ -1,5 +1,5 @@
import 'intersection-observer';
import 'requestidlecallback';
import objectFitImages from 'object-fit-images';
import objectFitImages from 'object-fit-images';
objectFitImages();

View File

@ -238,9 +238,18 @@ class Header extends ImmutablePureComponent {
const content = { __html: account.get('note_emojified') };
const displayNameHtml = { __html: account.get('display_name_html') };
const fields = account.get('fields');
const badge = account.get('bot') ? (<div className='account-role bot'><FormattedMessage id='account.badges.bot' defaultMessage='Bot' /></div>) : null;
const acct = account.get('acct').indexOf('@') === -1 && domain ? `${account.get('acct')}@${domain}` : account.get('acct');
let badge;
if (account.get('bot')) {
badge = (<div className='account-role bot'><FormattedMessage id='account.badges.bot' defaultMessage='Bot' /></div>);
} else if (account.get('group')) {
badge = (<div className='account-role group'><FormattedMessage id='account.badges.group' defaultMessage='Group' /></div>);
} else {
badge = null;
}
return (
<div className={classNames('account__header', { inactive: !!account.get('moved') })} ref={this.setRef}>
<div className='account__header__image'>
@ -253,7 +262,7 @@ class Header extends ImmutablePureComponent {
<div className='account__header__bar'>
<div className='account__header__tabs'>
<a className='avatar' href={account.get('url')} rel='noopener' target='_blank'>
<a className='avatar' href={account.get('url')} rel='noopener noreferrer' target='_blank'>
<Avatar account={account} size={90} />
</a>
@ -282,10 +291,10 @@ class Header extends ImmutablePureComponent {
<dt dangerouslySetInnerHTML={{ __html: proof.get('provider') }} />
<dd className='verified'>
<a href={proof.get('proof_url')} target='_blank' rel='noopener'><span title={intl.formatMessage(messages.linkVerifiedOn, { date: intl.formatDate(proof.get('updated_at'), dateFormatOptions) })}>
<a href={proof.get('proof_url')} target='_blank' rel='noopener noreferrer'><span title={intl.formatMessage(messages.linkVerifiedOn, { date: intl.formatDate(proof.get('updated_at'), dateFormatOptions) })}>
<Icon id='check' className='verified__mark' />
</span></a>
<a href={proof.get('profile_url')} target='_blank' rel='noopener'><span dangerouslySetInnerHTML={{ __html: ' '+proof.get('provider_username') }} /></a>
<a href={proof.get('profile_url')} target='_blank' rel='noopener noreferrer'><span dangerouslySetInnerHTML={{ __html: ' '+proof.get('provider_username') }} /></a>
</dd>
</dl>
))}

View File

@ -1,12 +1,12 @@
import React from 'react';
import PropTypes from 'prop-types';
import ImmutablePropTypes from 'react-immutable-proptypes';
import ImmutablePureComponent from 'react-immutable-pure-component';
import { decode } from 'blurhash';
import classNames from 'classnames';
import Icon from 'mastodon/components/icon';
import { autoPlayGif, displayMedia } from 'mastodon/initial_state';
import classNames from 'classnames';
import { decode } from 'blurhash';
import { isIOS } from 'mastodon/is_mobile';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
import ImmutablePureComponent from 'react-immutable-pure-component';
export default class MediaItem extends ImmutablePureComponent {
@ -151,7 +151,7 @@ export default class MediaItem extends ImmutablePureComponent {
return (
<div className='account-gallery__item' style={{ width, height }}>
<a className='media-gallery__item-thumbnail' href={status.get('url')} target='_blank' onClick={this.handleClick} title={title}>
<a className='media-gallery__item-thumbnail' href={status.get('url')} onClick={this.handleClick} title={title} target='_blank' rel='noopener noreferrer'>
<canvas width={32} height={32} ref={this.setCanvasRef} className={classNames('media-gallery__preview', { 'media-gallery__preview--hidden': visible && loaded })} />
{visible && thumbnail}
{!visible && icon}

View File

@ -115,6 +115,7 @@ class AccountTimeline extends ImmutablePureComponent {
shouldUpdateScroll={shouldUpdateScroll}
emptyMessage={emptyMessage}
bindToDocument={!multiColumn}
timelineId='account'
/>
</Column>
);

View File

@ -12,6 +12,7 @@ const messages = defineMessages({
pause: { id: 'video.pause', defaultMessage: 'Pause' },
mute: { id: 'video.mute', defaultMessage: 'Mute sound' },
unmute: { id: 'video.unmute', defaultMessage: 'Unmute sound' },
download: { id: 'video.download', defaultMessage: 'Download file' },
});
export default @injectIntl
@ -36,15 +37,14 @@ class Audio extends React.PureComponent {
volume: 0.5,
};
// hard coded in components.scss
// any way to get ::before values programatically?
volWidth = 50;
// Hard coded in components.scss
// Any way to get ::before values programatically?
volWidth = 50;
volOffset = 70;
volHandleOffset = v => {
const offset = v * this.volWidth + this.volOffset;
return (offset > 110) ? 110 : offset;
}
@ -60,6 +60,8 @@ class Audio extends React.PureComponent {
if (this.waveform) {
this._updateWaveform();
}
window.addEventListener('scroll', this.handleScroll);
}
componentDidUpdate (prevProps) {
@ -69,6 +71,8 @@ class Audio extends React.PureComponent {
}
componentWillUnmount () {
window.removeEventListener('scroll', this.handleScroll);
if (this.wavesurfer) {
this.wavesurfer.destroy();
this.wavesurfer = null;
@ -127,16 +131,15 @@ class Audio extends React.PureComponent {
this.loaded = true;
}
this.wavesurfer.play();
this.setState({ paused: false });
this.setState({ paused: false }, () => this.wavesurfer.play());
} else {
this.wavesurfer.pause();
this.setState({ paused: true });
this.setState({ paused: true }, () => this.wavesurfer.pause());
}
}
toggleMute = () => {
this.wavesurfer.setMute(!this.state.muted);
const muted = !this.state.muted;
this.setState({ muted }, () => this.wavesurfer.setMute(muted));
}
handleVolumeMouseDown = e => {
@ -175,6 +178,19 @@ class Audio extends React.PureComponent {
}
}, 60);
handleScroll = throttle(() => {
if (!this.waveform || !this.wavesurfer) {
return;
}
const { top, height } = this.waveform.getBoundingClientRect();
const inView = (top <= (window.innerHeight || document.documentElement.clientHeight)) && (top + height >= 0);
if (!this.state.paused && !inView) {
this.setState({ paused: true }, () => this.wavesurfer.pause());
}
}, 150, { trailing: true })
render () {
const { height, intl, alt, editable } = this.props;
const { paused, muted, volume, currentTime } = this.state;
@ -202,6 +218,7 @@ class Audio extends React.PureComponent {
<button type='button' aria-label={intl.formatMessage(muted ? messages.unmute : messages.mute)} onClick={this.toggleMute}><Icon id={muted ? 'volume-off' : 'volume-up'} fixedWidth /></button>
<div className='video-player__volume' onMouseDown={this.handleVolumeMouseDown} ref={this.setVolumeRef}>
&nbsp;
<div className='video-player__volume__current' style={{ width: `${volumeWidth}px` }} />
<span
@ -217,6 +234,14 @@ class Audio extends React.PureComponent {
<span className='video-player__time-total'>{formatTime(this.state.duration || Math.floor(this.props.duration))}</span>
</span>
</div>
<div className='video-player__buttons right'>
<button type='button' aria-label={intl.formatMessage(messages.download)}>
<a className='video-player__download__icon' href={this.props.src} download>
<Icon id={'download'} fixedWidth />
</a>
</button>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,104 @@
import React from 'react';
import { connect } from 'react-redux';
import PropTypes from 'prop-types';
import ImmutablePropTypes from 'react-immutable-proptypes';
import { fetchBookmarkedStatuses, expandBookmarkedStatuses } from '../../actions/bookmarks';
import Column from '../ui/components/column';
import ColumnHeader from '../../components/column_header';
import { addColumn, removeColumn, moveColumn } from '../../actions/columns';
import StatusList from '../../components/status_list';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import ImmutablePureComponent from 'react-immutable-pure-component';
import { debounce } from 'lodash';
const messages = defineMessages({
heading: { id: 'column.bookmarks', defaultMessage: 'Bookmarks' },
});
const mapStateToProps = state => ({
statusIds: state.getIn(['status_lists', 'bookmarks', 'items']),
isLoading: state.getIn(['status_lists', 'bookmarks', 'isLoading'], true),
hasMore: !!state.getIn(['status_lists', 'bookmarks', 'next']),
});
export default @connect(mapStateToProps)
@injectIntl
class Bookmarks extends ImmutablePureComponent {
static propTypes = {
dispatch: PropTypes.func.isRequired,
shouldUpdateScroll: PropTypes.func,
statusIds: ImmutablePropTypes.list.isRequired,
intl: PropTypes.object.isRequired,
columnId: PropTypes.string,
multiColumn: PropTypes.bool,
hasMore: PropTypes.bool,
isLoading: PropTypes.bool,
};
componentWillMount () {
this.props.dispatch(fetchBookmarkedStatuses());
}
handlePin = () => {
const { columnId, dispatch } = this.props;
if (columnId) {
dispatch(removeColumn(columnId));
} else {
dispatch(addColumn('BOOKMARKS', {}));
}
}
handleMove = (dir) => {
const { columnId, dispatch } = this.props;
dispatch(moveColumn(columnId, dir));
}
handleHeaderClick = () => {
this.column.scrollTop();
}
setRef = c => {
this.column = c;
}
handleLoadMore = debounce(() => {
this.props.dispatch(expandBookmarkedStatuses());
}, 300, { leading: true })
render () {
const { intl, shouldUpdateScroll, statusIds, columnId, multiColumn, hasMore, isLoading } = this.props;
const pinned = !!columnId;
const emptyMessage = <FormattedMessage id='empty_column.bookmarked_statuses' defaultMessage="You don't have any bookmarked toots yet. When you bookmark one, it will show up here." />;
return (
<Column bindToDocument={!multiColumn} ref={this.setRef} label={intl.formatMessage(messages.heading)}>
<ColumnHeader
icon='bookmark'
title={intl.formatMessage(messages.heading)}
onPin={this.handlePin}
onMove={this.handleMove}
onClick={this.handleHeaderClick}
pinned={pinned}
multiColumn={multiColumn}
showBackButton
/>
<StatusList
trackScroll={!pinned}
statusIds={statusIds}
scrollKey={`bookmarked_statuses-${columnId}`}
hasMore={hasMore}
isLoading={isLoading}
onLoadMore={this.handleLoadMore}
shouldUpdateScroll={shouldUpdateScroll}
emptyMessage={emptyMessage}
bindToDocument={!multiColumn}
/>
</Column>
);
}
}

View File

@ -14,15 +14,16 @@ const messages = defineMessages({
title: { id: 'column.community', defaultMessage: 'Local timeline' },
});
const mapStateToProps = (state, { onlyMedia, columnId }) => {
const mapStateToProps = (state, { columnId }) => {
const uuid = columnId;
const columns = state.getIn(['settings', 'columns']);
const index = columns.findIndex(c => c.get('uuid') === uuid);
const onlyMedia = (columnId && index >= 0) ? columns.get(index).getIn(['params', 'other', 'onlyMedia']) : state.getIn(['settings', 'community', 'other', 'onlyMedia']);
const timelineState = state.getIn(['timelines', `community${onlyMedia ? ':media' : ''}`]);
return {
hasUnread: !!timelineState && (timelineState.get('unread') > 0 || timelineState.get('pendingItems').size > 0),
onlyMedia: (columnId && index >= 0) ? columns.get(index).getIn(['params', 'other', 'onlyMedia']) : state.getIn(['settings', 'community', 'other', 'onlyMedia']),
hasUnread: !!timelineState && timelineState.get('unread') > 0,
onlyMedia,
};
};

View File

@ -290,6 +290,7 @@ class EmojiPickerDropdown extends React.PureComponent {
onPickEmoji: PropTypes.func.isRequired,
onSkinTone: PropTypes.func.isRequired,
skinTone: PropTypes.number.isRequired,
button: PropTypes.node,
};
state = {
@ -350,18 +351,18 @@ class EmojiPickerDropdown extends React.PureComponent {
}
render () {
const { intl, onPickEmoji, onSkinTone, skinTone, frequentlyUsedEmojis } = this.props;
const { intl, onPickEmoji, onSkinTone, skinTone, frequentlyUsedEmojis, button } = this.props;
const title = intl.formatMessage(messages.emoji);
const { active, loading, placement } = this.state;
return (
<div className='emoji-picker-dropdown' onKeyDown={this.handleKeyDown}>
<div ref={this.setTargetRef} className='emoji-button' title={title} aria-label={title} aria-expanded={active} role='button' onClick={this.onToggle} onKeyDown={this.onToggle} tabIndex={0}>
<img
{button || <img
className={classNames('emojione', { 'pulse-loading': active && loading })}
alt='🙂'
src={`${assetHost}/emoji/1f602.svg`}
/>
/>}
</div>
<Overlay show={active} placement={placement} target={this.findTarget}>

View File

@ -13,6 +13,8 @@ const messages = defineMessages({
add_option: { id: 'compose_form.poll.add_option', defaultMessage: 'Add a choice' },
remove_option: { id: 'compose_form.poll.remove_option', defaultMessage: 'Remove this choice' },
poll_duration: { id: 'compose_form.poll.duration', defaultMessage: 'Poll duration' },
switchToMultiple: { id: 'compose_form.poll.switch_to_multiple', defaultMessage: 'Change poll to allow multiple choices' },
switchToSingle: { id: 'compose_form.poll.switch_to_single', defaultMessage: 'Change poll to allow for a single choice' },
minutes: { id: 'intervals.full.minutes', defaultMessage: '{number, plural, one {# minute} other {# minutes}}' },
hours: { id: 'intervals.full.hours', defaultMessage: '{number, plural, one {# hour} other {# hours}}' },
days: { id: 'intervals.full.days', defaultMessage: '{number, plural, one {# day} other {# days}}' },
@ -50,6 +52,12 @@ class Option extends React.PureComponent {
e.stopPropagation();
};
handleCheckboxKeypress = e => {
if (e.key === 'Enter' || e.key === ' ') {
this.handleToggleMultiple(e);
}
}
onSuggestionsClearRequested = () => {
this.props.onClearSuggestions();
}
@ -71,8 +79,11 @@ class Option extends React.PureComponent {
<span
className={classNames('poll__input', { checkbox: isPollMultiple })}
onClick={this.handleToggleMultiple}
onKeyPress={this.handleCheckboxKeypress}
role='button'
tabIndex='0'
title={intl.formatMessage(isPollMultiple ? messages.switchToSingle : messages.switchToMultiple)}
aria-label={intl.formatMessage(isPollMultiple ? messages.switchToSingle : messages.switchToMultiple)}
/>
<AutosuggestInput
@ -142,9 +153,7 @@ class PollForm extends ImmutablePureComponent {
</ul>
<div className='poll__footer'>
{options.size < 4 && (
<button className='button button-secondary' onClick={this.handleAddOption}><Icon id='plus' /> <FormattedMessage {...messages.add_option} /></button>
)}
<button disabled={options.size >= 4} className='button button-secondary' onClick={this.handleAddOption}><Icon id='plus' /> <FormattedMessage {...messages.add_option} /></button>
<select value={expiresIn} onChange={this.handleSelectDuration}>
<option value={300}>{intl.formatMessage(messages.minutes, { number: 5 })}</option>

View File

@ -3,7 +3,7 @@ import UploadButton from '../components/upload_button';
import { uploadCompose } from '../../../actions/compose';
const mapStateToProps = state => ({
disabled: state.getIn(['compose', 'is_uploading']) || (state.getIn(['compose', 'media_attachments']).size > 3 || state.getIn(['compose', 'media_attachments']).some(m => ['video', 'audio'].includes(m.get('type')))),
disabled: state.getIn(['compose', 'is_uploading']) || (state.getIn(['compose', 'media_attachments']).size + state.getIn(['compose', 'pending_media_attachments']) > 3 || state.getIn(['compose', 'media_attachments']).some(m => ['video', 'audio'].includes(m.get('type')))),
unavailable: state.getIn(['compose', 'poll']) !== null,
resetFileKey: state.getIn(['compose', 'resetFileKey']),
});

View File

@ -12,6 +12,7 @@ import IconButton from 'mastodon/components/icon_button';
import RelativeTimestamp from 'mastodon/components/relative_timestamp';
import { HotKeys } from 'react-hotkeys';
import { autoPlayGif } from 'mastodon/initial_state';
import classNames from 'classnames';
const messages = defineMessages({
more: { id: 'status.more', defaultMessage: 'More' },
@ -158,7 +159,7 @@ class Conversation extends ImmutablePureComponent {
return (
<HotKeys handlers={handlers}>
<div className='conversation focusable muted' tabIndex='0'>
<div className={classNames('conversation focusable muted', { 'conversation--unread': unread })} tabIndex='0'>
<div className='conversation__avatar'>
<AvatarComposite accounts={accounts} size={48} />
</div>
@ -166,7 +167,7 @@ class Conversation extends ImmutablePureComponent {
<div className='conversation__content'>
<div className='conversation__content__info'>
<div className='conversation__content__relative-time'>
<RelativeTimestamp timestamp={lastStatus.get('created_at')} />
{unread && <span className='conversation__unread' />} <RelativeTimestamp timestamp={lastStatus.get('created_at')} />
</div>
<div className='conversation__content__names' ref={this.setNamesRef}>

View File

@ -22,6 +22,7 @@ const messages = defineMessages({
requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },
unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },
unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },
unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },
});
const makeMapStateToProps = () => {

View File

@ -0,0 +1,436 @@
import React from 'react';
import ImmutablePureComponent from 'react-immutable-pure-component';
import ReactSwipeableViews from 'react-swipeable-views';
import ImmutablePropTypes from 'react-immutable-proptypes';
import PropTypes from 'prop-types';
import IconButton from 'mastodon/components/icon_button';
import Icon from 'mastodon/components/icon';
import { defineMessages, injectIntl, FormattedMessage, FormattedDate } from 'react-intl';
import { autoPlayGif, reduceMotion } from 'mastodon/initial_state';
import elephantUIPlane from 'mastodon/../images/elephant_ui_plane.svg';
import { mascot } from 'mastodon/initial_state';
import unicodeMapping from 'mastodon/features/emoji/emoji_unicode_mapping_light';
import classNames from 'classnames';
import EmojiPickerDropdown from 'mastodon/features/compose/containers/emoji_picker_dropdown_container';
import AnimatedNumber from 'mastodon/components/animated_number';
import TransitionMotion from 'react-motion/lib/TransitionMotion';
import spring from 'react-motion/lib/spring';
const messages = defineMessages({
close: { id: 'lightbox.close', defaultMessage: 'Close' },
previous: { id: 'lightbox.previous', defaultMessage: 'Previous' },
next: { id: 'lightbox.next', defaultMessage: 'Next' },
});
class Content extends ImmutablePureComponent {
static contextTypes = {
router: PropTypes.object,
};
static propTypes = {
announcement: ImmutablePropTypes.map.isRequired,
};
setRef = c => {
this.node = c;
}
componentDidMount () {
this._updateLinks();
this._updateEmojis();
}
componentDidUpdate () {
this._updateLinks();
this._updateEmojis();
}
_updateEmojis () {
const node = this.node;
if (!node || autoPlayGif) {
return;
}
const emojis = node.querySelectorAll('.custom-emoji');
for (var i = 0; i < emojis.length; i++) {
let emoji = emojis[i];
if (emoji.classList.contains('status-emoji')) {
continue;
}
emoji.classList.add('status-emoji');
emoji.addEventListener('mouseenter', this.handleEmojiMouseEnter, false);
emoji.addEventListener('mouseleave', this.handleEmojiMouseLeave, false);
}
}
_updateLinks () {
const node = this.node;
if (!node) {
return;
}
const links = node.querySelectorAll('a');
for (var i = 0; i < links.length; ++i) {
let link = links[i];
if (link.classList.contains('status-link')) {
continue;
}
link.classList.add('status-link');
let mention = this.props.announcement.get('mentions').find(item => link.href === item.get('url'));
if (mention) {
link.addEventListener('click', this.onMentionClick.bind(this, mention), false);
link.setAttribute('title', mention.get('acct'));
} else if (link.textContent[0] === '#' || (link.previousSibling && link.previousSibling.textContent && link.previousSibling.textContent[link.previousSibling.textContent.length - 1] === '#')) {
link.addEventListener('click', this.onHashtagClick.bind(this, link.text), false);
} else {
link.setAttribute('title', link.href);
link.classList.add('unhandled-link');
}
link.setAttribute('target', '_blank');
link.setAttribute('rel', 'noopener noreferrer');
}
}
onMentionClick = (mention, e) => {
if (this.context.router && e.button === 0 && !(e.ctrlKey || e.metaKey)) {
e.preventDefault();
this.context.router.history.push(`/accounts/${mention.get('id')}`);
}
}
onHashtagClick = (hashtag, e) => {
hashtag = hashtag.replace(/^#/, '');
if (this.context.router && e.button === 0 && !(e.ctrlKey || e.metaKey)) {
e.preventDefault();
this.context.router.history.push(`/timelines/tag/${hashtag}`);
}
}
handleEmojiMouseEnter = ({ target }) => {
target.src = target.getAttribute('data-original');
}
handleEmojiMouseLeave = ({ target }) => {
target.src = target.getAttribute('data-static');
}
render () {
const { announcement } = this.props;
return (
<div
className='announcements__item__content'
ref={this.setRef}
dangerouslySetInnerHTML={{ __html: announcement.get('contentHtml') }}
/>
);
}
}
const assetHost = process.env.CDN_HOST || '';
class Emoji extends React.PureComponent {
static propTypes = {
emoji: PropTypes.string.isRequired,
emojiMap: ImmutablePropTypes.map.isRequired,
hovered: PropTypes.bool.isRequired,
};
render () {
const { emoji, emojiMap, hovered } = this.props;
if (unicodeMapping[emoji]) {
const { filename, shortCode } = unicodeMapping[this.props.emoji];
const title = shortCode ? `:${shortCode}:` : '';
return (
<img
draggable='false'
className='emojione'
alt={emoji}
title={title}
src={`${assetHost}/emoji/${filename}.svg`}
/>
);
} else if (emojiMap.get(emoji)) {
const filename = (autoPlayGif || hovered) ? emojiMap.getIn([emoji, 'url']) : emojiMap.getIn([emoji, 'static_url']);
const shortCode = `:${emoji}:`;
return (
<img
draggable='false'
className='emojione custom-emoji'
alt={shortCode}
title={shortCode}
src={filename}
/>
);
} else {
return null;
}
}
}
class Reaction extends ImmutablePureComponent {
static propTypes = {
announcementId: PropTypes.string.isRequired,
reaction: ImmutablePropTypes.map.isRequired,
addReaction: PropTypes.func.isRequired,
removeReaction: PropTypes.func.isRequired,
emojiMap: ImmutablePropTypes.map.isRequired,
style: PropTypes.object,
};
state = {
hovered: false,
};
handleClick = () => {
const { reaction, announcementId, addReaction, removeReaction } = this.props;
if (reaction.get('me')) {
removeReaction(announcementId, reaction.get('name'));
} else {
addReaction(announcementId, reaction.get('name'));
}
}
handleMouseEnter = () => this.setState({ hovered: true })
handleMouseLeave = () => this.setState({ hovered: false })
render () {
const { reaction } = this.props;
let shortCode = reaction.get('name');
if (unicodeMapping[shortCode]) {
shortCode = unicodeMapping[shortCode].shortCode;
}
return (
<button className={classNames('reactions-bar__item', { active: reaction.get('me') })} onClick={this.handleClick} onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave} title={`:${shortCode}:`} style={this.props.style}>
<span className='reactions-bar__item__emoji'><Emoji hovered={this.state.hovered} emoji={reaction.get('name')} emojiMap={this.props.emojiMap} /></span>
<span className='reactions-bar__item__count'><AnimatedNumber value={reaction.get('count')} /></span>
</button>
);
}
}
class ReactionsBar extends ImmutablePureComponent {
static propTypes = {
announcementId: PropTypes.string.isRequired,
reactions: ImmutablePropTypes.list.isRequired,
addReaction: PropTypes.func.isRequired,
removeReaction: PropTypes.func.isRequired,
emojiMap: ImmutablePropTypes.map.isRequired,
};
handleEmojiPick = data => {
const { addReaction, announcementId } = this.props;
addReaction(announcementId, data.native.replace(/:/g, ''));
}
willEnter () {
return { scale: reduceMotion ? 1 : 0 };
}
willLeave () {
return { scale: reduceMotion ? 0 : spring(0, { stiffness: 170, damping: 26 }) };
}
render () {
const { reactions } = this.props;
const visibleReactions = reactions.filter(x => x.get('count') > 0);
const styles = visibleReactions.map(reaction => ({
key: reaction.get('name'),
data: reaction,
style: { scale: reduceMotion ? 1 : spring(1, { stiffness: 150, damping: 13 }) },
})).toArray();
return (
<TransitionMotion styles={styles} willEnter={this.willEnter} willLeave={this.willLeave}>
{items => (
<div className={classNames('reactions-bar', { 'reactions-bar--empty': visibleReactions.isEmpty() })}>
{items.map(({ key, data, style }) => (
<Reaction
key={key}
reaction={data}
style={{ transform: `scale(${style.scale})`, position: style.scale < 0.5 ? 'absolute' : 'static' }}
announcementId={this.props.announcementId}
addReaction={this.props.addReaction}
removeReaction={this.props.removeReaction}
emojiMap={this.props.emojiMap}
/>
))}
{visibleReactions.size < 8 && <EmojiPickerDropdown onPickEmoji={this.handleEmojiPick} button={<Icon id='plus' />} />}
</div>
)}
</TransitionMotion>
);
}
}
class Announcement extends ImmutablePureComponent {
static propTypes = {
announcement: ImmutablePropTypes.map.isRequired,
emojiMap: ImmutablePropTypes.map.isRequired,
addReaction: PropTypes.func.isRequired,
removeReaction: PropTypes.func.isRequired,
intl: PropTypes.object.isRequired,
selected: PropTypes.bool,
};
state = {
unread: !this.props.announcement.get('read'),
};
componentDidUpdate () {
const { selected, announcement } = this.props;
if (!selected && this.state.unread !== !announcement.get('read')) {
this.setState({ unread: !announcement.get('read') });
}
}
render () {
const { announcement } = this.props;
const { unread } = this.state;
const startsAt = announcement.get('starts_at') && new Date(announcement.get('starts_at'));
const endsAt = announcement.get('ends_at') && new Date(announcement.get('ends_at'));
const now = new Date();
const hasTimeRange = startsAt && endsAt;
const skipYear = hasTimeRange && startsAt.getFullYear() === endsAt.getFullYear() && endsAt.getFullYear() === now.getFullYear();
const skipEndDate = hasTimeRange && startsAt.getDate() === endsAt.getDate() && startsAt.getMonth() === endsAt.getMonth() && startsAt.getFullYear() === endsAt.getFullYear();
const skipTime = announcement.get('all_day');
return (
<div className='announcements__item'>
<strong className='announcements__item__range'>
<FormattedMessage id='announcement.announcement' defaultMessage='Announcement' />
{hasTimeRange && <span> · <FormattedDate value={startsAt} hour12={false} year={(skipYear || startsAt.getFullYear() === now.getFullYear()) ? undefined : 'numeric'} month='short' day='2-digit' hour={skipTime ? undefined : '2-digit'} minute={skipTime ? undefined : '2-digit'} /> - <FormattedDate value={endsAt} hour12={false} year={(skipYear || endsAt.getFullYear() === now.getFullYear()) ? undefined : 'numeric'} month={skipEndDate ? undefined : 'short'} day={skipEndDate ? undefined : '2-digit'} hour={skipTime ? undefined : '2-digit'} minute={skipTime ? undefined : '2-digit'} /></span>}
</strong>
<Content announcement={announcement} />
<ReactionsBar
reactions={announcement.get('reactions')}
announcementId={announcement.get('id')}
addReaction={this.props.addReaction}
removeReaction={this.props.removeReaction}
emojiMap={this.props.emojiMap}
/>
{unread && <span className='announcements__item__unread' />}
</div>
);
}
}
export default @injectIntl
class Announcements extends ImmutablePureComponent {
static propTypes = {
announcements: ImmutablePropTypes.list,
emojiMap: ImmutablePropTypes.map.isRequired,
dismissAnnouncement: PropTypes.func.isRequired,
addReaction: PropTypes.func.isRequired,
removeReaction: PropTypes.func.isRequired,
intl: PropTypes.object.isRequired,
};
state = {
index: 0,
};
componentDidMount () {
this._markAnnouncementAsRead();
}
componentDidUpdate () {
this._markAnnouncementAsRead();
}
_markAnnouncementAsRead () {
const { dismissAnnouncement, announcements } = this.props;
const { index } = this.state;
const announcement = announcements.get(index);
if (!announcement.get('read')) dismissAnnouncement(announcement.get('id'));
}
handleChangeIndex = index => {
this.setState({ index: index % this.props.announcements.size });
}
handleNextClick = () => {
this.setState({ index: (this.state.index + 1) % this.props.announcements.size });
}
handlePrevClick = () => {
this.setState({ index: (this.props.announcements.size + this.state.index - 1) % this.props.announcements.size });
}
render () {
const { announcements, intl } = this.props;
const { index } = this.state;
if (announcements.isEmpty()) {
return null;
}
return (
<div className='announcements'>
<img className='announcements__mastodon' alt='' draggable='false' src={mascot || elephantUIPlane} />
<div className='announcements__container'>
<ReactSwipeableViews animateHeight={!reduceMotion} adjustHeight={reduceMotion} index={index} onChangeIndex={this.handleChangeIndex}>
{announcements.map((announcement, idx) => (
<Announcement
key={announcement.get('id')}
announcement={announcement}
emojiMap={this.props.emojiMap}
addReaction={this.props.addReaction}
removeReaction={this.props.removeReaction}
intl={intl}
selected={index === idx}
/>
))}
</ReactSwipeableViews>
{announcements.size > 1 && (
<div className='announcements__pagination'>
<IconButton disabled={announcements.size === 1} title={intl.formatMessage(messages.previous)} icon='chevron-left' onClick={this.handlePrevClick} size={13} />
<span>{index + 1} / {announcements.size}</span>
<IconButton disabled={announcements.size === 1} title={intl.formatMessage(messages.next)} icon='chevron-right' onClick={this.handleNextClick} size={13} />
</div>
)}
</div>
</div>
);
}
}

View File

@ -0,0 +1,20 @@
import { connect } from 'react-redux';
import { addReaction, removeReaction, dismissAnnouncement } from 'mastodon/actions/announcements';
import Announcements from '../components/announcements';
import { createSelector } from 'reselect';
import { Map as ImmutableMap } from 'immutable';
const customEmojiMap = createSelector([state => state.get('custom_emojis')], items => items.reduce((map, emoji) => map.set(emoji.get('shortcode'), emoji), ImmutableMap()));
const mapStateToProps = state => ({
announcements: state.getIn(['announcements', 'items']),
emojiMap: customEmojiMap(state),
});
const mapDispatchToProps = dispatch => ({
dismissAnnouncement: id => dispatch(dismissAnnouncement(id)),
addReaction: (id, name) => dispatch(addReaction(id, name)),
removeReaction: (id, name) => dispatch(removeReaction(id, name)),
});
export default connect(mapStateToProps, mapDispatchToProps)(Announcements);

View File

@ -1,5 +1,5 @@
import { connect } from 'react-redux';
import { fetchTrends } from '../../../actions/trends';
import { fetchTrends } from 'mastodon/actions/trends';
import Trends from '../components/trends';
const mapStateToProps = state => ({

View File

@ -22,6 +22,7 @@ const messages = defineMessages({
settings_subheading: { id: 'column_subheading.settings', defaultMessage: 'Settings' },
community_timeline: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },
direct: { id: 'navigation_bar.direct', defaultMessage: 'Direct messages' },
bookmarks: { id: 'navigation_bar.bookmarks', defaultMessage: 'Bookmarks' },
preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },
follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' },
favourites: { id: 'navigation_bar.favourites', defaultMessage: 'Favourites' },
@ -126,11 +127,12 @@ class GettingStarted extends ImmutablePureComponent {
navItems.push(
<ColumnLink key={i++} icon='envelope' text={intl.formatMessage(messages.direct)} to='/timelines/direct' />,
<ColumnLink key={i++} icon='bookmark' text={intl.formatMessage(messages.bookmarks)} to='/bookmarks' />,
<ColumnLink key={i++} icon='star' text={intl.formatMessage(messages.favourites)} to='/favourites' />,
<ColumnLink key={i++} icon='list-ul' text={intl.formatMessage(messages.lists)} to='/lists' />
);
height += 48*3;
height += 48*4;
if (myAccount.get('locked') || unreadFollowRequests > 0) {
navItems.push(<ColumnLink key={i++} icon='user-plus' text={intl.formatMessage(messages.follow_requests)} badge={badgeDisplay(unreadFollowRequests, 40)} to='/follow_requests' />);

View File

@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
import ImmutablePropTypes from 'react-immutable-proptypes';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import Toggle from 'react-toggle';
import AsyncSelect from 'react-select/lib/Async';
import AsyncSelect from 'react-select/async';
const messages = defineMessages({
placeholder: { id: 'hashtag.column_settings.select.placeholder', defaultMessage: 'Enter hashtags…' },

View File

@ -9,14 +9,23 @@ import { addColumn, removeColumn, moveColumn } from '../../actions/columns';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import ColumnSettingsContainer from './containers/column_settings_container';
import { Link } from 'react-router-dom';
import { fetchAnnouncements, toggleShowAnnouncements } from 'mastodon/actions/announcements';
import AnnouncementsContainer from 'mastodon/features/getting_started/containers/announcements_container';
import classNames from 'classnames';
import IconWithBadge from 'mastodon/components/icon_with_badge';
const messages = defineMessages({
title: { id: 'column.home', defaultMessage: 'Home' },
show_announcements: { id: 'home.show_announcements', defaultMessage: 'Show announcements' },
hide_announcements: { id: 'home.hide_announcements', defaultMessage: 'Hide announcements' },
});
const mapStateToProps = state => ({
hasUnread: state.getIn(['timelines', 'home', 'unread']) > 0,
isPartial: state.getIn(['timelines', 'home', 'isPartial']),
hasAnnouncements: !state.getIn(['announcements', 'items']).isEmpty(),
unreadAnnouncements: state.getIn(['announcements', 'items']).count(item => !item.get('read')),
showAnnouncements: state.getIn(['announcements', 'show']),
});
export default @connect(mapStateToProps)
@ -31,6 +40,9 @@ class HomeTimeline extends React.PureComponent {
isPartial: PropTypes.bool,
columnId: PropTypes.string,
multiColumn: PropTypes.bool,
hasAnnouncements: PropTypes.bool,
unreadAnnouncements: PropTypes.number,
showAnnouncements: PropTypes.bool,
};
handlePin = () => {
@ -61,6 +73,7 @@ class HomeTimeline extends React.PureComponent {
}
componentDidMount () {
this.props.dispatch(fetchAnnouncements());
this._checkIfReloadNeeded(false, this.props.isPartial);
}
@ -93,10 +106,31 @@ class HomeTimeline extends React.PureComponent {
}
}
handleToggleAnnouncementsClick = (e) => {
e.stopPropagation();
this.props.dispatch(toggleShowAnnouncements());
}
render () {
const { intl, shouldUpdateScroll, hasUnread, columnId, multiColumn } = this.props;
const { intl, shouldUpdateScroll, hasUnread, columnId, multiColumn, hasAnnouncements, unreadAnnouncements, showAnnouncements } = this.props;
const pinned = !!columnId;
let announcementsButton = null;
if (hasAnnouncements) {
announcementsButton = (
<button
className={classNames('column-header__button', { 'active': showAnnouncements })}
title={intl.formatMessage(showAnnouncements ? messages.hide_announcements : messages.show_announcements)}
aria-label={intl.formatMessage(showAnnouncements ? messages.hide_announcements : messages.show_announcements)}
aria-pressed={showAnnouncements ? 'true' : 'false'}
onClick={this.handleToggleAnnouncementsClick}
>
<IconWithBadge id='bullhorn' count={unreadAnnouncements} />
</button>
);
}
return (
<Column bindToDocument={!multiColumn} ref={this.setRef} label={intl.formatMessage(messages.title)}>
<ColumnHeader
@ -108,6 +142,8 @@ class HomeTimeline extends React.PureComponent {
onClick={this.handleHeaderClick}
pinned={pinned}
multiColumn={multiColumn}
extraButton={announcementsButton}
appendContent={hasAnnouncements && showAnnouncements && <AnnouncementsContainer />}
>
<ColumnSettingsContainer />
</ColumnHeader>

View File

@ -56,6 +56,10 @@ class KeyboardShortcuts extends ImmutablePureComponent {
<td><kbd>enter</kbd>, <kbd>o</kbd></td>
<td><FormattedMessage id='keyboard_shortcuts.enter' defaultMessage='to open status' /></td>
</tr>
<tr>
<td><kbd>e</kbd></td>
<td><FormattedMessage id='keyboard_shortcuts.open_media' defaultMessage='to open media' /></td>
</tr>
<tr>
<td><kbd>x</kbd></td>
<td><FormattedMessage id='keyboard_shortcuts.toggle_hidden' defaultMessage='to show/hide text behind CW' /></td>

View File

@ -57,6 +57,17 @@ export default class ColumnSettings extends React.PureComponent {
</div>
</div>
<div role='group' aria-labelledby='notifications-follow-request'>
<span id='notifications-follow-request' className='column-settings__section'><FormattedMessage id='notifications.column_settings.follow_request' defaultMessage='New follow requests:' /></span>
<div className='column-settings__row'>
<SettingToggle prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'follow_request']} onChange={onChange} label={alertStr} />
{showPushSettings && <SettingToggle prefix='notifications_push' settings={pushSettings} settingPath={['alerts', 'follow_request']} onChange={this.onPushChange} label={pushStr} />}
<SettingToggle prefix='notifications' settings={settings} settingPath={['shows', 'follow_request']} onChange={onChange} label={showStr} />
<SettingToggle prefix='notifications' settings={settings} settingPath={['sounds', 'follow_request']} onChange={onChange} label={soundStr} />
</div>
</div>
<div role='group' aria-labelledby='notifications-favourite'>
<span id='notifications-favourite' className='column-settings__section'><FormattedMessage id='notifications.column_settings.favourite' defaultMessage='Favourites:' /></span>

View File

@ -0,0 +1,59 @@
import React, { Fragment } from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
import PropTypes from 'prop-types';
import Avatar from 'mastodon/components/avatar';
import DisplayName from 'mastodon/components/display_name';
import Permalink from 'mastodon/components/permalink';
import IconButton from 'mastodon/components/icon_button';
import { defineMessages, injectIntl } from 'react-intl';
import ImmutablePureComponent from 'react-immutable-pure-component';
const messages = defineMessages({
authorize: { id: 'follow_request.authorize', defaultMessage: 'Authorize' },
reject: { id: 'follow_request.reject', defaultMessage: 'Reject' },
});
export default @injectIntl
class FollowRequest extends ImmutablePureComponent {
static propTypes = {
account: ImmutablePropTypes.map.isRequired,
onAuthorize: PropTypes.func.isRequired,
onReject: PropTypes.func.isRequired,
intl: PropTypes.object.isRequired,
};
render () {
const { intl, hidden, account, onAuthorize, onReject } = this.props;
if (!account) {
return <div />;
}
if (hidden) {
return (
<Fragment>
{account.get('display_name')}
{account.get('username')}
</Fragment>
);
}
return (
<div className='account'>
<div className='account__wrapper'>
<Permalink key={account.get('id')} className='account__display-name' title={account.get('acct')} href={account.get('url')} to={`/accounts/${account.get('id')}`}>
<div className='account__avatar-wrapper'><Avatar account={account} size={36} /></div>
<DisplayName account={account} />
</Permalink>
<div className='account__relationship'>
<IconButton title={intl.formatMessage(messages.authorize)} icon='check' onClick={onAuthorize} />
<IconButton title={intl.formatMessage(messages.reject)} icon='times' onClick={onReject} />
</div>
</div>
</div>
);
}
}

View File

@ -1,13 +1,23 @@
import React from 'react';
import PropTypes from 'prop-types';
import ImmutablePropTypes from 'react-immutable-proptypes';
import StatusContainer from '../../../containers/status_container';
import AccountContainer from '../../../containers/account_container';
import { injectIntl, FormattedMessage } from 'react-intl';
import Permalink from '../../../components/permalink';
import ImmutablePureComponent from 'react-immutable-pure-component';
import { injectIntl, FormattedMessage, defineMessages } from 'react-intl';
import { HotKeys } from 'react-hotkeys';
import PropTypes from 'prop-types';
import ImmutablePureComponent from 'react-immutable-pure-component';
import { me } from 'mastodon/initial_state';
import StatusContainer from 'mastodon/containers/status_container';
import AccountContainer from 'mastodon/containers/account_container';
import FollowRequestContainer from '../containers/follow_request_container';
import Icon from 'mastodon/components/icon';
import Permalink from 'mastodon/components/permalink';
const messages = defineMessages({
favourite: { id: 'notification.favourite', defaultMessage: '{name} favourited your status' },
follow: { id: 'notification.follow', defaultMessage: '{name} followed you' },
ownPoll: { id: 'notification.own_poll', defaultMessage: 'Your poll has ended' },
poll: { id: 'notification.poll', defaultMessage: 'A poll you have voted in has ended' },
reblog: { id: 'notification.reblog', defaultMessage: '{name} boosted your status' },
});
const notificationForScreenReader = (intl, message, timestamp) => {
const output = [message];
@ -107,7 +117,7 @@ class Notification extends ImmutablePureComponent {
return (
<HotKeys handlers={this.getHandlers()}>
<div className='notification notification-follow focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage({ id: 'notification.follow', defaultMessage: '{name} followed you' }, { name: account.get('acct') }), notification.get('created_at'))}>
<div className='notification notification-follow focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage(messages.follow, { name: account.get('acct') }), notification.get('created_at'))}>
<div className='notification__message'>
<div className='notification__favourite-icon-wrapper'>
<Icon id='user-plus' fixedWidth />
@ -118,7 +128,29 @@ class Notification extends ImmutablePureComponent {
</span>
</div>
<AccountContainer id={account.get('id')} withNote={false} hidden={this.props.hidden} />
<AccountContainer id={account.get('id')} hidden={this.props.hidden} />
</div>
</HotKeys>
);
}
renderFollowRequest (notification, account, link) {
const { intl } = this.props;
return (
<HotKeys handlers={this.getHandlers()}>
<div className='notification notification-follow-request focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage({ id: 'notification.follow_request', defaultMessage: '{name} has requested to follow you' }, { name: account.get('acct') }), notification.get('created_at'))}>
<div className='notification__message'>
<div className='notification__favourite-icon-wrapper'>
<Icon id='user' fixedWidth />
</div>
<span title={notification.get('created_at')}>
<FormattedMessage id='notification.follow_request' defaultMessage='{name} has requested to follow you' values={{ name: link }} />
</span>
</div>
<FollowRequestContainer id={account.get('id')} withNote={false} hidden={this.props.hidden} />
</div>
</HotKeys>
);
@ -146,7 +178,7 @@ class Notification extends ImmutablePureComponent {
return (
<HotKeys handlers={this.getHandlers()}>
<div className='notification notification-favourite focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage({ id: 'notification.favourite', defaultMessage: '{name} favourited your status' }, { name: notification.getIn(['account', 'acct']) }), notification.get('created_at'))}>
<div className='notification notification-favourite focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage(messages.favourite, { name: notification.getIn(['account', 'acct']) }), notification.get('created_at'))}>
<div className='notification__message'>
<div className='notification__favourite-icon-wrapper'>
<Icon id='star' className='star-icon' fixedWidth />
@ -178,7 +210,7 @@ class Notification extends ImmutablePureComponent {
return (
<HotKeys handlers={this.getHandlers()}>
<div className='notification notification-reblog focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage({ id: 'notification.reblog', defaultMessage: '{name} boosted your status' }, { name: notification.getIn(['account', 'acct']) }), notification.get('created_at'))}>
<div className='notification notification-reblog focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage(messages.reblog, { name: notification.getIn(['account', 'acct']) }), notification.get('created_at'))}>
<div className='notification__message'>
<div className='notification__favourite-icon-wrapper'>
<Icon id='retweet' fixedWidth />
@ -205,25 +237,31 @@ class Notification extends ImmutablePureComponent {
);
}
renderPoll (notification) {
renderPoll (notification, account) {
const { intl } = this.props;
const ownPoll = me === account.get('id');
const message = ownPoll ? intl.formatMessage(messages.ownPoll) : intl.formatMessage(messages.poll);
return (
<HotKeys handlers={this.getHandlers()}>
<div className='notification notification-poll focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage({ id: 'notification.poll', defaultMessage: 'A poll you have voted in has ended' }), notification.get('created_at'))}>
<div className='notification notification-poll focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, message, notification.get('created_at'))}>
<div className='notification__message'>
<div className='notification__favourite-icon-wrapper'>
<Icon id='tasks' fixedWidth />
</div>
<span title={notification.get('created_at')}>
<FormattedMessage id='notification.poll' defaultMessage='A poll you have voted in has ended' />
{ownPoll ? (
<FormattedMessage id='notification.own_poll' defaultMessage='Your poll has ended' />
) : (
<FormattedMessage id='notification.poll' defaultMessage='A poll you have voted in has ended' />
)}
</span>
</div>
<StatusContainer
id={notification.get('status')}
account={notification.get('account')}
account={account}
muted
withDismiss
hidden={this.props.hidden}
@ -246,6 +284,8 @@ class Notification extends ImmutablePureComponent {
switch(notification.get('type')) {
case 'follow':
return this.renderFollow(notification, account, link);
case 'follow_request':
return this.renderFollowRequest(notification, account, link);
case 'mention':
return this.renderMention(notification);
case 'favourite':
@ -253,7 +293,7 @@ class Notification extends ImmutablePureComponent {
case 'reblog':
return this.renderReblog(notification, link);
case 'poll':
return this.renderPoll(notification);
return this.renderPoll(notification, account);
}
return null;

View File

@ -0,0 +1,26 @@
import { connect } from 'react-redux';
import { makeGetAccount } from 'mastodon/selectors';
import FollowRequest from '../components/follow_request';
import { authorizeFollowRequest, rejectFollowRequest } from 'mastodon/actions/accounts';
const makeMapStateToProps = () => {
const getAccount = makeGetAccount();
const mapStateToProps = (state, props) => ({
account: getAccount(state, props.id),
});
return mapStateToProps;
};
const mapDispatchToProps = (dispatch, { id }) => ({
onAuthorize () {
dispatch(authorizeFollowRequest(id));
},
onReject () {
dispatch(rejectFollowRequest(id));
},
});
export default connect(makeMapStateToProps, mapDispatchToProps)(FollowRequest);

View File

@ -14,14 +14,16 @@ const messages = defineMessages({
title: { id: 'column.public', defaultMessage: 'Federated timeline' },
});
const mapStateToProps = (state, { onlyMedia, columnId }) => {
const mapStateToProps = (state, { columnId }) => {
const uuid = columnId;
const columns = state.getIn(['settings', 'columns']);
const index = columns.findIndex(c => c.get('uuid') === uuid);
const onlyMedia = (columnId && index >= 0) ? columns.get(index).getIn(['params', 'other', 'onlyMedia']) : state.getIn(['settings', 'public', 'other', 'onlyMedia']);
const timelineState = state.getIn(['timelines', `public${onlyMedia ? ':media' : ''}`]);
return {
hasUnread: state.getIn(['timelines', `public${onlyMedia ? ':media' : ''}`, 'unread']) > 0,
onlyMedia: (columnId && index >= 0) ? columns.get(index).getIn(['params', 'other', 'onlyMedia']) : state.getIn(['settings', 'public', 'other', 'onlyMedia']),
hasUnread: !!timelineState && timelineState.get('unread') > 0,
onlyMedia,
};
};

View File

@ -1,5 +1,6 @@
import React from 'react';
import PropTypes from 'prop-types';
import { connect } from 'react-redux';
import IconButton from '../../../components/icon_button';
import ImmutablePropTypes from 'react-immutable-proptypes';
import DropdownMenuContainer from '../../../containers/dropdown_menu_container';
@ -18,6 +19,8 @@ const messages = defineMessages({
cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' },
local_only: { id: 'status.local_only', defaultMessage: 'This post is only visible by other users of your instance' },
favourite: { id: 'status.favourite', defaultMessage: 'Favourite' },
bookmark: { id: 'status.bookmark', defaultMessage: 'Bookmark' },
more: { id: 'status.more', defaultMessage: 'More' },
mute: { id: 'status.mute', defaultMessage: 'Mute @{name}' },
muteConversation: { id: 'status.mute_conversation', defaultMessage: 'Mute conversation' },
unmuteConversation: { id: 'status.unmute_conversation', defaultMessage: 'Unmute conversation' },
@ -30,9 +33,18 @@ const messages = defineMessages({
admin_account: { id: 'status.admin_account', defaultMessage: 'Open moderation interface for @{name}' },
admin_status: { id: 'status.admin_status', defaultMessage: 'Open this status in the moderation interface' },
copy: { id: 'status.copy', defaultMessage: 'Copy link to status' },
blockDomain: { id: 'account.block_domain', defaultMessage: 'Hide everything from {domain}' },
unblockDomain: { id: 'account.unblock_domain', defaultMessage: 'Unhide {domain}' },
unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },
unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },
});
export default @injectIntl
const mapStateToProps = (state, { status }) => ({
relationship: state.getIn(['relationships', status.getIn(['account', 'id'])]),
});
export default @connect(mapStateToProps)
@injectIntl
class ActionBar extends React.PureComponent {
static contextTypes = {
@ -41,15 +53,21 @@ class ActionBar extends React.PureComponent {
static propTypes = {
status: ImmutablePropTypes.map.isRequired,
relationship: ImmutablePropTypes.map,
onReply: PropTypes.func.isRequired,
onReblog: PropTypes.func.isRequired,
onFavourite: PropTypes.func.isRequired,
onBookmark: PropTypes.func.isRequired,
onDelete: PropTypes.func.isRequired,
onDirect: PropTypes.func.isRequired,
onMention: PropTypes.func.isRequired,
onMute: PropTypes.func,
onMuteConversation: PropTypes.func,
onUnmute: PropTypes.func,
onBlock: PropTypes.func,
onUnblock: PropTypes.func,
onBlockDomain: PropTypes.func,
onUnblockDomain: PropTypes.func,
onMuteConversation: PropTypes.func,
onReport: PropTypes.func,
onPin: PropTypes.func,
onEmbed: PropTypes.func,
@ -68,6 +86,10 @@ class ActionBar extends React.PureComponent {
this.props.onFavourite(this.props.status);
}
handleBookmarkClick = (e) => {
this.props.onBookmark(this.props.status, e);
}
handleDeleteClick = () => {
this.props.onDelete(this.props.status, this.context.router.history);
}
@ -85,17 +107,45 @@ class ActionBar extends React.PureComponent {
}
handleMuteClick = () => {
this.props.onMute(this.props.status.get('account'));
const { status, relationship, onMute, onUnmute } = this.props;
const account = status.get('account');
if (relationship && relationship.get('muting')) {
onUnmute(account);
} else {
onMute(account);
}
}
handleBlockClick = () => {
const { status, relationship, onBlock, onUnblock } = this.props;
const account = status.get('account');
if (relationship && relationship.get('blocking')) {
onUnblock(account);
} else {
onBlock(status);
}
}
handleBlockDomain = () => {
const { status, onBlockDomain } = this.props;
const account = status.get('account');
onBlockDomain(account.get('acct').split('@')[1]);
}
handleUnblockDomain = () => {
const { status, onUnblockDomain } = this.props;
const account = status.get('account');
onUnblockDomain(account.get('acct').split('@')[1]);
}
handleConversationMuteClick = () => {
this.props.onMuteConversation(this.props.status);
}
handleBlockClick = () => {
this.props.onBlock(this.props.status);
}
handleReport = () => {
this.props.onReport(this.props.status);
}
@ -135,11 +185,12 @@ class ActionBar extends React.PureComponent {
}
render () {
const { status, intl } = this.props;
const { status, relationship, intl } = this.props;
const publicStatus = ['public', 'unlisted'].includes(status.get('visibility'));
const mutingConversation = status.get('muted');
const federated = !status.get('local_only');
const account = status.get('account');
let menu = [];
@ -167,9 +218,33 @@ class ActionBar extends React.PureComponent {
menu.push({ text: intl.formatMessage(messages.mention, { name: status.getIn(['account', 'username']) }), action: this.handleMentionClick });
menu.push({ text: intl.formatMessage(messages.direct, { name: status.getIn(['account', 'username']) }), action: this.handleDirectClick });
menu.push(null);
menu.push({ text: intl.formatMessage(messages.mute, { name: status.getIn(['account', 'username']) }), action: this.handleMuteClick });
menu.push({ text: intl.formatMessage(messages.block, { name: status.getIn(['account', 'username']) }), action: this.handleBlockClick });
if (relationship && relationship.get('muting')) {
menu.push({ text: intl.formatMessage(messages.unmute, { name: account.get('username') }), action: this.handleMuteClick });
} else {
menu.push({ text: intl.formatMessage(messages.mute, { name: account.get('username') }), action: this.handleMuteClick });
}
if (relationship && relationship.get('blocking')) {
menu.push({ text: intl.formatMessage(messages.unblock, { name: account.get('username') }), action: this.handleBlockClick });
} else {
menu.push({ text: intl.formatMessage(messages.block, { name: account.get('username') }), action: this.handleBlockClick });
}
menu.push({ text: intl.formatMessage(messages.report, { name: status.getIn(['account', 'username']) }), action: this.handleReport });
if (account.get('acct') !== account.get('username')) {
const domain = account.get('acct').split('@')[1];
menu.push(null);
if (relationship && relationship.get('domain_blocking')) {
menu.push({ text: intl.formatMessage(messages.unblockDomain, { domain }), action: this.handleUnblockDomain });
} else {
menu.push({ text: intl.formatMessage(messages.blockDomain, { domain }), action: this.handleBlockDomain });
}
}
if (isStaff) {
menu.push(null);
menu.push({ text: intl.formatMessage(messages.admin_account, { name: status.getIn(['account', 'username']) }), href: `/admin/accounts/${status.getIn(['account', 'id'])}` });
@ -177,7 +252,7 @@ class ActionBar extends React.PureComponent {
}
}
const shareButton = ('share' in navigator) && status.get('visibility') === 'public' && federated && (
const shareButton = ('share' in navigator) && publicStatus && federated && (
<div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.share)} icon='share-alt' onClick={this.handleShare} /></div>
);
@ -192,17 +267,16 @@ class ActionBar extends React.PureComponent {
if (status.get('visibility') === 'direct') reblogIcon = 'envelope';
else if (status.get('visibility') === 'private') reblogIcon = 'lock';
let reblog_disabled = (status.get('visibility') === 'direct' || status.get('visibility') === 'private');
return (
<div className='detailed-status__action-bar'>
<div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.reply)} icon={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? 'reply' : replyIcon} onClick={this.handleReplyClick} /></div>
<div className='detailed-status__button'><IconButton disabled={reblog_disabled} active={status.get('reblogged')} title={reblog_disabled ? intl.formatMessage(messages.cannot_reblog) : intl.formatMessage(messages.reblog)} icon={reblogIcon} onClick={this.handleReblogClick} /></div>
<div className='detailed-status__button'><IconButton disabled={!publicStatus} active={status.get('reblogged')} title={!publicStatus ? intl.formatMessage(messages.cannot_reblog) : intl.formatMessage(messages.reblog)} icon={reblogIcon} onClick={this.handleReblogClick} /></div>
<div className='detailed-status__button'><IconButton className='star-icon' animate active={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='star' onClick={this.handleFavouriteClick} /></div>
{shareButton}
<div className='detailed-status__button'><IconButton className='bookmark-icon' active={status.get('bookmarked')} title={intl.formatMessage(messages.bookmark)} icon='bookmark' onClick={this.handleBookmarkClick} /></div>
<div className='detailed-status__action-bar-dropdown'>
<DropdownMenuContainer size={18} icon='ellipsis-h' items={menu} direction='left' title='More' />
<DropdownMenuContainer size={18} icon='ellipsis-h' status={status} items={menu} direction='left' title={intl.formatMessage(messages.more)} />
</div>
</div>
);

View File

@ -148,7 +148,7 @@ export default class Card extends React.PureComponent {
const horizontal = (!compact && card.get('width') > card.get('height') && (card.get('width') + 100 >= width)) || card.get('type') !== 'link' || embedded;
const interactive = card.get('type') !== 'link';
const className = classnames('status-card', { horizontal, compact, interactive });
const title = interactive ? <a className='status-card__title' href={card.get('url')} title={card.get('title')} rel='noopener' target='_blank'><strong>{card.get('title')}</strong></a> : <strong className='status-card__title' title={card.get('title')}>{card.get('title')}</strong>;
const title = interactive ? <a className='status-card__title' href={card.get('url')} title={card.get('title')} rel='noopener noreferrer' target='_blank'><strong>{card.get('title')}</strong></a> : <strong className='status-card__title' title={card.get('title')}>{card.get('title')}</strong>;
const ratio = card.get('width') / card.get('height');
const height = (compact && !embedded) ? (width / (16 / 9)) : (width / ratio);
@ -180,7 +180,7 @@ export default class Card extends React.PureComponent {
<div className='status-card__actions'>
<div>
<button onClick={this.handleEmbedClick}><Icon id={iconVariant} /></button>
{horizontal && <a href={card.get('url')} target='_blank' rel='noopener'><Icon id='external-link' /></a>}
{horizontal && <a href={card.get('url')} target='_blank' rel='noopener noreferrer'><Icon id='external-link' /></a>}
</div>
</div>
</div>
@ -208,7 +208,7 @@ export default class Card extends React.PureComponent {
}
return (
<a href={card.get('url')} className={className} target='_blank' rel='noopener' ref={this.setRef}>
<a href={card.get('url')} className={className} target='_blank' rel='noopener noreferrer' ref={this.setRef}>
{embed}
{description}
</a>

View File

@ -6,7 +6,7 @@ import DisplayName from '../../../components/display_name';
import StatusContent from '../../../components/status_content';
import MediaGallery from '../../../components/media_gallery';
import { Link } from 'react-router-dom';
import { defineMessages, injectIntl, FormattedDate, FormattedNumber } from 'react-intl';
import { defineMessages, injectIntl, FormattedDate } from 'react-intl';
import Card from './card';
import ImmutablePureComponent from 'react-immutable-pure-component';
import Video from '../../video';
@ -14,6 +14,7 @@ import Audio from '../../audio';
import scheduleIdleTask from '../../ui/util/schedule_idle_task';
import classNames from 'classnames';
import Icon from 'mastodon/components/icon';
import AnimatedNumber from 'mastodon/components/animated_number';
const messages = defineMessages({
local_only: { id: 'status.local_only', defaultMessage: 'This post is only visible by other users of your instance' },
@ -163,7 +164,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
}
if (status.get('application')) {
applicationLink = <span> · <a className='detailed-status__application' href={status.getIn(['application', 'website'])} target='_blank' rel='noopener'>{status.getIn(['application', 'name'])}</a></span>;
applicationLink = <span> · <a className='detailed-status__application' href={status.getIn(['application', 'website'])} target='_blank' rel='noopener noreferrer'>{status.getIn(['application', 'name'])}</a></span>;
}
if (status.get('visibility') === 'direct') {
@ -179,7 +180,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
<Link to={`/statuses/${status.get('id')}/reblogs`} className='detailed-status__link'>
<Icon id={reblogIcon} />
<span className='detailed-status__reblogs'>
<FormattedNumber value={status.get('reblogs_count')} />
<AnimatedNumber value={status.get('reblogs_count')} />
</span>
</Link>
);
@ -188,7 +189,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
<a href={`/interact/${status.get('id')}?type=reblog`} className='detailed-status__link' onClick={this.handleModalLink}>
<Icon id={reblogIcon} />
<span className='detailed-status__reblogs'>
<FormattedNumber value={status.get('reblogs_count')} />
<AnimatedNumber value={status.get('reblogs_count')} />
</span>
</a>
);
@ -203,7 +204,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
<Link to={`/statuses/${status.get('id')}/favourites`} className='detailed-status__link'>
<Icon id='star' />
<span className='detailed-status__favorites'>
<FormattedNumber value={status.get('favourites_count')} />
<AnimatedNumber value={status.get('favourites_count')} />
</span>
</Link>
);
@ -212,7 +213,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
<a href={`/interact/${status.get('id')}?type=favourite`} className='detailed-status__link' onClick={this.handleModalLink}>
<Icon id='star' />
<span className='detailed-status__favorites'>
<FormattedNumber value={status.get('favourites_count')} />
<AnimatedNumber value={status.get('favourites_count')} />
</span>
</a>
);
@ -231,7 +232,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
{media}
<div className='detailed-status__meta'>
<a className='detailed-status__datetime' href={status.get('url')} target='_blank' rel='noopener'>
<a className='detailed-status__datetime' href={status.get('url')} target='_blank' rel='noopener noreferrer'>
<FormattedDate value={new Date(status.get('created_at'))} hour12={false} year='numeric' month='short' day='2-digit' hour='2-digit' minute='2-digit' />
</a>{applicationLink} · {reblogLink} · {favouriteLink}{localOnly}
</div>

View File

@ -13,6 +13,8 @@ import Column from '../ui/components/column';
import {
favourite,
unfavourite,
bookmark,
unbookmark,
reblog,
unreblog,
pin,
@ -30,6 +32,14 @@ import {
hideStatus,
revealStatus,
} from '../../actions/statuses';
import {
unblockAccount,
unmuteAccount,
} from '../../actions/accounts';
import {
blockDomain,
unblockDomain,
} from '../../actions/domain_blocks';
import { initMuteModal } from '../../actions/mutes';
import { initBlockModal } from '../../actions/blocks';
import { initReport } from '../../actions/reports';
@ -39,7 +49,7 @@ import ColumnBackButton from '../../components/column_back_button';
import ColumnHeader from '../../components/column_header';
import StatusContainer from '../../containers/status_container';
import { openModal } from '../../actions/modal';
import { defineMessages, injectIntl } from 'react-intl';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import ImmutablePureComponent from 'react-immutable-pure-component';
import { HotKeys } from 'react-hotkeys';
import { boostModal, deleteModal } from '../../initial_state';
@ -57,6 +67,7 @@ const messages = defineMessages({
detailedStatus: { id: 'status.detailed_status', defaultMessage: 'Detailed conversation view' },
replyConfirm: { id: 'confirmations.reply.confirm', defaultMessage: 'Reply' },
replyMessage: { id: 'confirmations.reply.message', defaultMessage: 'Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?' },
blockDomainConfirm: { id: 'confirmations.domain_block.confirm', defaultMessage: 'Hide entire domain' },
});
const makeMapStateToProps = () => {
@ -232,6 +243,14 @@ class Status extends ImmutablePureComponent {
}
}
handleBookmarkClick = (status) => {
if (status.get('bookmarked')) {
this.props.dispatch(unbookmark(status));
} else {
this.props.dispatch(bookmark(status));
}
}
handleDeleteClick = (status, history, withRedraft = false) => {
const { dispatch, intl } = this.props;
@ -262,6 +281,22 @@ class Status extends ImmutablePureComponent {
this.props.dispatch(openModal('VIDEO', { media, time }));
}
handleHotkeyOpenMedia = e => {
const status = this._properStatus();
e.preventDefault();
if (status.get('media_attachments').size > 0) {
if (status.getIn(['media_attachments', 0, 'type']) === 'audio') {
// TODO: toggle play/paused?
} else if (status.getIn(['media_attachments', 0, 'type']) === 'video') {
this.handleOpenVideo(status.getIn(['media_attachments', 0]), 0);
} else {
this.handleOpenMedia(status.get('media_attachments'), 0);
}
}
}
handleMuteClick = (account) => {
this.props.dispatch(initMuteModal(account));
}
@ -307,6 +342,27 @@ class Status extends ImmutablePureComponent {
this.props.dispatch(openModal('EMBED', { url: status.get('url') }));
}
handleUnmuteClick = account => {
this.props.dispatch(unmuteAccount(account.get('id')));
}
handleUnblockClick = account => {
this.props.dispatch(unblockAccount(account.get('id')));
}
handleBlockDomainClick = domain => {
this.props.dispatch(openModal('CONFIRM', {
message: <FormattedMessage id='confirmations.domain_block.message' defaultMessage='Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.' values={{ domain: <strong>{domain}</strong> }} />,
confirm: this.props.intl.formatMessage(messages.blockDomainConfirm),
onConfirm: () => this.props.dispatch(blockDomain(domain)),
}));
}
handleUnblockDomainClick = domain => {
this.props.dispatch(unblockDomain(domain));
}
handleHotkeyMoveUp = () => {
this.handleMoveUp(this.props.status.get('id'));
}
@ -466,6 +522,7 @@ class Status extends ImmutablePureComponent {
openProfile: this.handleHotkeyOpenProfile,
toggleHidden: this.handleHotkeyToggleHidden,
toggleSensitive: this.handleHotkeyToggleSensitive,
openMedia: this.handleHotkeyOpenMedia,
};
return (
@ -485,6 +542,7 @@ class Status extends ImmutablePureComponent {
<HotKeys handlers={handlers}>
<div className={classNames('focusable', 'detailed-status__wrapper')} tabIndex='0' aria-label={textForScreenReader(intl, status, false)}>
<DetailedStatus
key={`details-${status.get('id')}`}
status={status}
onOpenVideo={this.handleOpenVideo}
onOpenMedia={this.handleOpenMedia}
@ -495,16 +553,22 @@ class Status extends ImmutablePureComponent {
/>
<ActionBar
key={`action-bar-${status.get('id')}`}
status={status}
onReply={this.handleReplyClick}
onFavourite={this.handleFavouriteClick}
onReblog={this.handleReblogClick}
onBookmark={this.handleBookmarkClick}
onDelete={this.handleDeleteClick}
onDirect={this.handleDirectClick}
onMention={this.handleMentionClick}
onMute={this.handleMuteClick}
onUnmute={this.handleUnmuteClick}
onMuteConversation={this.handleConversationMuteClick}
onBlock={this.handleBlockClick}
onUnblock={this.handleUnblockClick}
onBlockDomain={this.handleBlockDomainClick}
onUnblockDomain={this.handleUnblockDomainClick}
onReport={this.handleReport}
onPin={this.handlePin}
onEmbed={this.handleEmbed}

View File

@ -26,7 +26,7 @@ export default class ActionsModal extends ImmutablePureComponent {
return (
<li key={`${text}-${i}`}>
<a href={href} target='_blank' rel='noopener' onClick={this.props.onClick} data-index={i} className={classNames({ active })}>
<a href={href} target='_blank' rel='noopener noreferrer' onClick={this.props.onClick} data-index={i} className={classNames({ active })}>
{icon && <IconButton title={text} icon={icon} role='presentation' tabIndex='-1' inverted />}
<div>
<div className={classNames({ 'actions-modal__item-label': !!meta })}>{text}</div>
@ -42,7 +42,7 @@ export default class ActionsModal extends ImmutablePureComponent {
<div className='status light'>
<div className='boost-modal__status-header'>
<div className='boost-modal__status-time'>
<a href={this.props.status.get('url')} className='status__relative-time' target='_blank' rel='noopener'>
<a href={this.props.status.get('url')} className='status__relative-time' target='_blank' rel='noopener noreferrer'>
<RelativeTimestamp timestamp={this.props.status.get('created_at')} />
</a>
</div>

View File

@ -61,7 +61,7 @@ class BoostModal extends ImmutablePureComponent {
<div className='status light'>
<div className='boost-modal__status-header'>
<div className='boost-modal__status-time'>
<a href={status.get('url')} className='status__relative-time' target='_blank' rel='noopener'><RelativeTimestamp timestamp={status.get('created_at')} /></a>
<a href={status.get('url')} className='status__relative-time' target='_blank' rel='noopener noreferrer'><RelativeTimestamp timestamp={status.get('created_at')} /></a>
</div>
<a onClick={this.handleAccountClick} href={status.getIn(['account', 'url'])} className='status__display-name'>

View File

@ -21,6 +21,7 @@ import {
HashtagTimeline,
DirectTimeline,
FavouritedStatuses,
BookmarkedStatuses,
ListTimeline,
Directory,
} from '../../ui/util/async-components';
@ -40,6 +41,7 @@ const componentMap = {
'HASHTAG': HashtagTimeline,
'DIRECT': DirectTimeline,
'FAVOURITES': FavouritedStatuses,
'BOOKMARKS': BookmarkedStatuses,
'LIST': ListTimeline,
'DIRECTORY': Directory,
};
@ -182,7 +184,7 @@ class ColumnsArea extends ImmutablePureComponent {
const floatingActionButton = shouldHideFAB(this.context.router.history.location.pathname) ? null : <Link key='floating-action-button' to='/statuses/new' className='floating-action-button' aria-label={intl.formatMessage(messages.publish)}><Icon id='pencil' /></Link>;
const content = columnIndex !== -1 ? (
<ReactSwipeableViews key='content' index={columnIndex} onChangeIndex={this.handleSwipe} onTransitionEnd={this.handleAnimationEnd} animateTransitions={shouldAnimate} springConfig={{ duration: '400ms', delay: '0s', easeFunction: 'ease' }} style={{ height: '100%' }}>
<ReactSwipeableViews key='content' hysteresis={0.2} threshold={15} index={columnIndex} onChangeIndex={this.handleSwipe} onTransitionEnd={this.handleAnimationEnd} animateTransitions={shouldAnimate} springConfig={{ duration: '400ms', delay: '0s', easeFunction: 'ease' }} style={{ height: '100%' }}>
{links.map(this.renderView)}
</ReactSwipeableViews>
) : (

View File

@ -184,6 +184,15 @@ class FocalPointModal extends ImmutablePureComponent {
this.setState({ description: e.target.value, dirty: true });
}
handleKeyDown = (e) => {
if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {
e.preventDefault();
e.stopPropagation();
this.setState({ description: e.target.value, dirty: true });
this.handleSubmit();
}
}
handleSubmit = () => {
this.props.onSave(this.state.description, this.state.focusX, this.state.focusY);
this.props.onClose();
@ -205,7 +214,7 @@ class FocalPointModal extends ImmutablePureComponent {
langPath: `${assetHost}/ocr/lang-data`,
});
let media_url = media.get('file');
let media_url = media.get('url');
if (window.URL && URL.createObjectURL) {
try {
@ -235,6 +244,16 @@ class FocalPointModal extends ImmutablePureComponent {
const previewWidth = 200;
const previewHeight = previewWidth / previewRatio;
let descriptionLabel = null;
if (media.get('type') === 'audio') {
descriptionLabel = <FormattedMessage id='upload_form.audio_description' defaultMessage='Describe for people with hearing loss' />;
} else if (media.get('type') === 'video') {
descriptionLabel = <FormattedMessage id='upload_form.video_description' defaultMessage='Describe for people with hearing loss or visual impairment' />;
} else {
descriptionLabel = <FormattedMessage id='upload_form.description' defaultMessage='Describe for the visually impaired' />;
}
return (
<div className='modal-root__modal report-modal' style={{ maxWidth: 960 }}>
<div className='report-modal__target'>
@ -246,7 +265,9 @@ class FocalPointModal extends ImmutablePureComponent {
<div className='report-modal__comment'>
{focals && <p><FormattedMessage id='upload_modal.hint' defaultMessage='Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.' /></p>}
<label className='setting-text-label' htmlFor='upload-modal__description'><FormattedMessage id='upload_form.description' defaultMessage='Describe for the visually impaired' /></label>
<label className='setting-text-label' htmlFor='upload-modal__description'>
{descriptionLabel}
</label>
<div className='setting-text__wrapper'>
<Textarea
@ -254,6 +275,7 @@ class FocalPointModal extends ImmutablePureComponent {
className='setting-text light'
value={detecting ? '…' : description}
onChange={this.handleChange}
onKeyDown={this.handleKeyDown}
disabled={detecting}
autoFocus
/>

View File

@ -4,12 +4,10 @@ import { fetchFollowRequests } from 'mastodon/actions/accounts';
import { connect } from 'react-redux';
import { NavLink, withRouter } from 'react-router-dom';
import IconWithBadge from 'mastodon/components/icon_with_badge';
import { me } from 'mastodon/initial_state';
import { List as ImmutableList } from 'immutable';
import { FormattedMessage } from 'react-intl';
const mapStateToProps = state => ({
locked: state.getIn(['accounts', me, 'locked']),
count: state.getIn(['user_lists', 'follow_requests', 'items'], ImmutableList()).size,
});
@ -19,22 +17,19 @@ class FollowRequestsNavLink extends React.Component {
static propTypes = {
dispatch: PropTypes.func.isRequired,
locked: PropTypes.bool,
count: PropTypes.number.isRequired,
};
componentDidMount () {
const { dispatch, locked } = this.props;
const { dispatch } = this.props;
if (locked) {
dispatch(fetchFollowRequests());
}
dispatch(fetchFollowRequests());
}
render () {
const { locked, count } = this.props;
const { count } = this.props;
if (!locked || count === 0) {
if (count === 0) {
return null;
}

View File

@ -62,7 +62,7 @@ class LinkFooter extends React.PureComponent {
<FormattedMessage
id='getting_started.open_source_notice'
defaultMessage='Mastodon is open source software. You can contribute or report issues on GitHub at {github}.'
values={{ github: <span><a href={source_url} rel='noopener' target='_blank'>{repository}</a> (v{version})</span> }}
values={{ github: <span><a href={source_url} rel='noopener noreferrer' target='_blank'>{repository}</a> (v{version})</span> }}
/>
<FormattedMessage
id='getting_started.hometown_open_source_notice'

View File

@ -211,7 +211,6 @@ class MediaModal extends ImmutablePureComponent {
style={swipeableViewsStyle}
containerStyle={containerStyle}
onChangeIndex={this.handleSwipe}
onSwitching={this.handleSwitching}
index={index}
>
{content}

View File

@ -17,6 +17,7 @@ const NavigationPanel = () => (
<NavLink className='column-link column-link--transparent' exact to='/timelines/public' data-preview-title-id='column.public' data-preview-icon='globe' ><Icon className='column-link__icon' id='globe' fixedWidth /><FormattedMessage id='tabs_bar.federated_timeline' defaultMessage='Federated' /></NavLink>
<NavLink className='column-link column-link--transparent' to='/timelines/direct'><Icon className='column-link__icon' id='envelope' fixedWidth /><FormattedMessage id='navigation_bar.direct' defaultMessage='Direct messages' /></NavLink>
<NavLink className='column-link column-link--transparent' to='/favourites'><Icon className='column-link__icon' id='star' fixedWidth /><FormattedMessage id='navigation_bar.favourites' defaultMessage='Favourites' /></NavLink>
<NavLink className='column-link column-link--transparent' to='/bookmarks'><Icon className='column-link__icon' id='bookmark' fixedWidth /><FormattedMessage id='navigation_bar.bookmarks' defaultMessage='Bookmarks' /></NavLink>
<NavLink className='column-link column-link--transparent' to='/lists'><Icon className='column-link__icon' id='list-ul' fixedWidth /><FormattedMessage id='navigation_bar.lists' defaultMessage='Lists' /></NavLink>
{profile_directory && <NavLink className='column-link column-link--transparent' to='/directory'><Icon className='column-link__icon' id='address-book-o' fixedWidth /><FormattedMessage id='getting_started.directory' defaultMessage='Profile directory' /></NavLink>}

View File

@ -6,9 +6,9 @@ import { createSelector } from 'reselect';
import { debounce } from 'lodash';
import { me } from '../../../initial_state';
const makeGetStatusIds = () => createSelector([
const makeGetStatusIds = (pending = false) => createSelector([
(state, { type }) => state.getIn(['settings', type], ImmutableMap()),
(state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),
(state, { type }) => state.getIn(['timelines', type, pending ? 'pendingItems' : 'items'], ImmutableList()),
(state) => state.get('statuses'),
], (columnSettings, statusIds, statuses) => {
return statusIds.filter(id => {
@ -31,13 +31,14 @@ const makeGetStatusIds = () => createSelector([
const makeMapStateToProps = () => {
const getStatusIds = makeGetStatusIds();
const getPendingStatusIds = makeGetStatusIds(true);
const mapStateToProps = (state, { timelineId }) => ({
statusIds: getStatusIds(state, { type: timelineId }),
isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),
isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),
hasMore: state.getIn(['timelines', timelineId, 'hasMore']),
numPending: state.getIn(['timelines', timelineId, 'pendingItems'], ImmutableList()).size,
numPending: getPendingStatusIds(state, { type: timelineId }).size,
});
return mapStateToProps;

View File

@ -41,6 +41,7 @@ import {
FollowRequests,
GenericNotFound,
FavouritedStatuses,
BookmarkedStatuses,
ListTimeline,
Blocks,
DomainBlocks,
@ -99,6 +100,7 @@ const keyMap = {
goToRequests: 'g r',
toggleHidden: 'x',
toggleSensitive: 'h',
openMedia: 'e',
};
class SwitchingColumnsArea extends React.PureComponent {
@ -164,7 +166,9 @@ class SwitchingColumnsArea extends React.PureComponent {
}
setRef = c => {
this.node = c.getWrappedInstance();
if (c) {
this.node = c.getWrappedInstance();
}
}
render () {
@ -188,6 +192,7 @@ class SwitchingColumnsArea extends React.PureComponent {
<WrappedRoute path='/notifications' component={Notifications} content={children} componentParams={{ shouldUpdateScroll: this.shouldUpdateScroll }} />
<WrappedRoute path='/favourites' component={FavouritedStatuses} content={children} componentParams={{ shouldUpdateScroll: this.shouldUpdateScroll }} />
<WrappedRoute path='/bookmarks' component={BookmarkedStatuses} content={children} />
<WrappedRoute path='/pinned' component={PinnedStatuses} content={children} componentParams={{ shouldUpdateScroll: this.shouldUpdateScroll }} />
<WrappedRoute path='/search' component={Search} content={children} />

View File

@ -90,6 +90,10 @@ export function FavouritedStatuses () {
return import(/* webpackChunkName: "features/favourited_statuses" */'../../favourited_statuses');
}
export function BookmarkedStatuses () {
return import(/* webpackChunkName: "features/bookmarked_statuses" */'../../bookmarked_statuses');
}
export function Blocks () {
return import(/* webpackChunkName: "features/blocks" */'../../blocks');
}

View File

@ -19,6 +19,7 @@ const messages = defineMessages({
close: { id: 'video.close', defaultMessage: 'Close video' },
fullscreen: { id: 'video.fullscreen', defaultMessage: 'Full screen' },
exit_fullscreen: { id: 'video.exit_fullscreen', defaultMessage: 'Exit full screen' },
download: { id: 'video.download', defaultMessage: 'Download file' },
});
export const formatTime = secondsNum => {
@ -123,12 +124,14 @@ class Video extends React.PureComponent {
revealed: this.props.visible !== undefined ? this.props.visible : (displayMedia !== 'hide_all' && !this.props.sensitive || displayMedia === 'show_all'),
};
// hard coded in components.scss
// any way to get ::before values programatically?
volWidth = 50;
// Hard-coded in components.scss
// Any way to get ::before values programatically?
volWidth = 50;
volOffset = 70;
volHandleOffset = v => {
const offset = v * this.volWidth + this.volOffset;
return (offset > 110) ? 110 : offset;
}
@ -137,6 +140,7 @@ class Video extends React.PureComponent {
if (c) {
if (this.props.cacheWidth) this.props.cacheWidth(this.player.offsetWidth);
this.setState({
containerWidth: c.offsetWidth,
});
@ -204,12 +208,14 @@ class Video extends React.PureComponent {
const x = (e.clientX - rect.left) / this.volWidth; //x position within the element.
if(!isNaN(x)) {
var slideamt = x;
let slideamt = x;
if(x > 1) {
slideamt = 1;
} else if(x < 0) {
slideamt = 0;
}
this.video.volume = slideamt;
this.setState({ volume: slideamt });
}
@ -251,9 +257,9 @@ class Video extends React.PureComponent {
togglePlay = () => {
if (this.state.paused) {
this.video.play();
this.setState({ paused: false }, () => this.video.play());
} else {
this.video.pause();
this.setState({ paused: true }, () => this.video.pause());
}
}
@ -271,12 +277,16 @@ class Video extends React.PureComponent {
document.addEventListener('mozfullscreenchange', this.handleFullscreenChange, true);
document.addEventListener('MSFullscreenChange', this.handleFullscreenChange, true);
window.addEventListener('scroll', this.handleScroll);
if (this.props.blurhash) {
this._decode();
}
}
componentWillUnmount () {
window.removeEventListener('scroll', this.handleScroll);
document.removeEventListener('fullscreenchange', this.handleFullscreenChange, true);
document.removeEventListener('webkitfullscreenchange', this.handleFullscreenChange, true);
document.removeEventListener('mozfullscreenchange', this.handleFullscreenChange, true);
@ -293,6 +303,7 @@ class Video extends React.PureComponent {
if (prevState.revealed && !this.state.revealed && this.video) {
this.video.pause();
}
if (prevProps.blurhash !== this.props.blurhash && this.props.blurhash) {
this._decode();
}
@ -312,6 +323,19 @@ class Video extends React.PureComponent {
}
}
handleScroll = throttle(() => {
if (!this.video) {
return;
}
const { top, height } = this.video.getBoundingClientRect();
const inView = (top <= (window.innerHeight || document.documentElement.clientHeight)) && (top + height >= 0);
if (!this.state.paused && !inView) {
this.setState({ paused: true }, () => this.video.pause());
}
}, 150, { trailing: true })
handleFullscreenChange = () => {
this.setState({ fullscreen: isFullscreen() });
}
@ -325,8 +349,11 @@ class Video extends React.PureComponent {
}
toggleMute = () => {
this.video.muted = !this.video.muted;
this.setState({ muted: this.video.muted });
const muted = !this.video.muted;
this.setState({ muted }, () => {
this.video.muted = muted;
});
}
toggleReveal = () => {
@ -429,7 +456,6 @@ class Video extends React.PureComponent {
src={src}
poster={preview}
preload={preload}
loop
role='button'
tabIndex='0'
aria-label={alt}
@ -466,10 +492,11 @@ class Video extends React.PureComponent {
<div className='video-player__buttons-bar'>
<div className='video-player__buttons left'>
<button type='button' aria-label={intl.formatMessage(paused ? messages.play : messages.pause)} onClick={this.togglePlay}><Icon id={paused ? 'play' : 'pause'} fixedWidth /></button>
<button type='button' aria-label={intl.formatMessage(paused ? messages.play : messages.pause)} onClick={this.togglePlay} autoFocus={detailed}><Icon id={paused ? 'play' : 'pause'} fixedWidth /></button>
<button type='button' aria-label={intl.formatMessage(muted ? messages.unmute : messages.mute)} onClick={this.toggleMute}><Icon id={muted ? 'volume-off' : 'volume-up'} fixedWidth /></button>
<div className='video-player__volume' onMouseDown={this.handleVolumeMouseDown} ref={this.setVolumeRef}>
&nbsp;
<div className='video-player__volume__current' style={{ width: `${volumeWidth}px` }} />
<span
className={classNames('video-player__volume__handle')}
@ -490,9 +517,10 @@ class Video extends React.PureComponent {
</div>
<div className='video-player__buttons right'>
{(!onCloseVideo && !editable) && <button type='button' aria-label={intl.formatMessage(messages.hide)} onClick={this.toggleReveal}><Icon id='eye-slash' fixedWidth /></button>}
{(!onCloseVideo && !editable && !fullscreen) && <button type='button' aria-label={intl.formatMessage(messages.hide)} onClick={this.toggleReveal}><Icon id='eye-slash' fixedWidth /></button>}
{(!fullscreen && onOpenVideo) && <button type='button' aria-label={intl.formatMessage(messages.expand)} onClick={this.handleOpenVideo}><Icon id='expand' fixedWidth /></button>}
{onCloseVideo && <button type='button' aria-label={intl.formatMessage(messages.close)} onClick={this.handleCloseVideo}><Icon id='compress' fixedWidth /></button>}
<button type='button' aria-label={intl.formatMessage(messages.download)}><a className='video-player__download__icon' href={this.props.src} download><Icon id={'download'} fixedWidth /></a></button>
<button type='button' aria-label={intl.formatMessage(fullscreen ? messages.exit_fullscreen : messages.fullscreen)} onClick={this.toggleFullscreen}><Icon id={fullscreen ? 'compress' : 'arrows-alt'} fixedWidth /></button>
</div>
</div>

View File

@ -24,5 +24,6 @@ export const useBlurhash = getMeta('use_blurhash');
export const usePendingItems = getMeta('use_pending_items');
export const showTrends = getMeta('trends');
export const title = getMeta('title');
export const cropImages = getMeta('crop_images');
export default initialState;

View File

@ -0,0 +1,16 @@
// On KaiOS, we may not be able to use a mouse cursor or navigate using Tab-based focus, so we install
// special left/right focus navigation keyboard listeners, at least on public pages (i.e. so folks
// can at least log in using KaiOS devices).
function importArrowKeyNavigation() {
return import(/* webpackChunkName: "arrow-key-navigation" */ 'arrow-key-navigation');
}
export default function loadKeyboardExtensions() {
if (/KAIOS/.test(navigator.userAgent)) {
return importArrowKeyNavigation().then(arrowKeyNav => {
arrowKeyNav.register();
});
}
return Promise.resolve();
}

View File

@ -1,18 +1,19 @@
{
"account.add_or_remove_from_list": "أضفه أو أزله من القائمة",
"account.badges.bot": "روبوت",
"account.badges.group": "فريق",
"account.block": "حظر @{name}",
"account.block_domain": "إخفاء كل شيئ قادم من اسم النطاق {domain}",
"account.block_domain": "إخفاء كل شيء قادم من اسم النطاق {domain}",
"account.blocked": "محظور",
"account.cancel_follow_request": "إلغاء طلب المتابَعة",
"account.direct": "رسالة خاصة إلى @{name}",
"account.domain_blocked": "النطاق مخفي",
"account.edit_profile": "تعديل الملف التعريفي",
"account.edit_profile": "تعديل الملف الشخصي",
"account.endorse": "أوصِ به على صفحتك",
"account.follow": "تابِع",
"account.followers": "متابعون",
"account.followers": ُتابِعون",
"account.followers.empty": "لا أحد يتبع هذا الحساب بعد.",
"account.follows": "يتبع",
"account.follows": "يتابع",
"account.follows.empty": "هذا الحساب لا يتبع أحدًا بعد.",
"account.follows_you": "يتابعك",
"account.hide_reblogs": "إخفاء ترقيات @{name}",
@ -27,7 +28,7 @@
"account.muted": "مكتوم",
"account.never_active": "أبدا",
"account.posts": "تبويقات",
"account.posts_with_replies": "التبويقات و الردود",
"account.posts_with_replies": "التبويقات والردود",
"account.report": "ابلِغ عن @{name}",
"account.requested": "في انتظار الموافقة. اضْغَطْ/ي لإلغاء طلب المتابعة",
"account.share": "شارك ملف تعريف @{name}",
@ -39,9 +40,10 @@
"account.unmute": "إلغاء الكتم عن @{name}",
"account.unmute_notifications": "إلغاء كتم إخطارات @{name}",
"alert.rate_limited.message": "يرجى إعادة المحاولة بعد {retry_time, time, medium}.",
"alert.rate_limited.title": "Rate limited",
"alert.rate_limited.title": "المعدل محدود",
"alert.unexpected.message": "لقد طرأ هناك خطأ غير متوقّع.",
"alert.unexpected.title": "المعذرة!",
"announcement.announcement": "إعلان",
"autosuggest_hashtag.per_week": "{count} في الأسبوع",
"boost_modal.combo": "يمكنك/ي ضغط {combo} لتخطّي هذه في المرّة القادمة",
"bundle_column_error.body": "لقد وقع هناك خطأ أثناء عملية تحميل هذا العنصر.",
@ -51,9 +53,10 @@
"bundle_modal_error.message": "لقد وقع هناك خطأ أثناء عملية تحميل هذا العنصر.",
"bundle_modal_error.retry": "إعادة المحاولة",
"column.blocks": "الحسابات المحجوبة",
"column.bookmarks": "الفواصل المرجعية",
"column.community": "الخيط العام المحلي",
"column.direct": "الرسائل المباشرة",
"column.directory": "استعرض الملفات التعريفية",
"column.directory": "استعراض الملفات التعريفية",
"column.domain_blocks": "النطاقات المخفية",
"column.favourites": "المفضلة",
"column.follow_requests": "طلبات المتابعة",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "مدة استطلاع الرأي",
"compose_form.poll.option_placeholder": "الخيار {number}",
"compose_form.poll.remove_option": "إزالة هذا الخيار",
"compose_form.poll.switch_to_multiple": "عدّل استطلاع الرأي وغيّره لإتاحة الخيارات المتعددة",
"compose_form.poll.switch_to_single": "عدّل استطلاع الرأي وغيّره لإتاحة خيار واحد فقط",
"compose_form.publish": "بوّق",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "تحديد الوسائط كحساسة",
@ -106,7 +111,7 @@
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.message": "هل أنت متأكد أنك تريد كتم {name} ؟",
"confirmations.redraft.confirm": "إزالة و إعادة الصياغة",
"confirmations.redraft.message": "هل أنت متأكد من أنك تريد حذف هذا المنشور و إعادة صياغته ؟ سوف تفقد جميع الإعجابات و الترقيات أما الردود المتصلة به فستُصبِح يتيمة.",
"confirmations.redraft.message": "هل أنت متأكد من أنك تريد حذف هذا المنشور و إعادة صياغته؟ سوف تفقد جميع الإعجابات و الترقيات أما الردود المتصلة به فستُصبِح يتيمة.",
"confirmations.reply.confirm": "رد",
"confirmations.reply.message": "الرد في الحين سوف يُعيد كتابة الرسالة التي أنت بصدد كتابتها. متأكد من أنك تريد المواصلة؟",
"confirmations.unfollow.confirm": "إلغاء المتابعة",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "ليس هناك تبويقات!",
"empty_column.account_unavailable": "الملف التعريفي غير متوفر",
"empty_column.blocks": "لم تقم بحظر أي مستخدِم بعد.",
"empty_column.bookmarked_statuses": "ليس لديك أية تبويقات في الفواصل المرجعية بعد. عندما ستقوم بإضافة البعض منها، ستظهر هنا.",
"empty_column.community": "الخط العام المحلي فارغ. أكتب شيئا ما للعامة كبداية!",
"empty_column.direct": "لم تتلق أية رسالة خاصة مباشِرة بعد. سوف يتم عرض الرسائل المباشرة هنا إن قمت بإرسال واحدة أو تلقيت البعض منها.",
"empty_column.domain_blocks": "ليس هناك نطاقات مخفية بعد.",
@ -153,8 +159,8 @@
"empty_column.notifications": "لم تتلق أي إشعار بعدُ. تفاعل مع المستخدمين الآخرين لإنشاء محادثة.",
"empty_column.public": "لا يوجد أي شيء هنا! قم بنشر شيء ما للعامة، أو اتبع المستخدمين الآخرين المتواجدين على الخوادم الأخرى لملء خيط المحادثات",
"error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
"error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"error.unexpected_crash.next_steps": "حاول إعادة إنعاش الصفحة. إن لم تُحلّ المشكلة ، يمكنك دائمًا استخدام ماستدون عبر متصفّح آخر أو تطبيق أصلي.",
"errors.unexpected_crash.copy_stacktrace": "انسخ تتبع الارتباطات إلى الحافظة",
"errors.unexpected_crash.report_issue": "الإبلاغ عن خلل",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
@ -181,8 +187,10 @@
"hashtag.column_settings.tag_mode.none": "لا شيء مِن هذه",
"hashtag.column_settings.tag_toggle": "إدراج الوسوم الإضافية لهذا العمود",
"home.column_settings.basic": "الأساسية",
"home.column_settings.show_reblogs": "عرض الترقيات",
"home.column_settings.show_reblogs": "اعرض الترقيات",
"home.column_settings.show_replies": "اعرض الردود",
"home.hide_announcements": "إخفاء الإعلانات",
"home.show_announcements": "إظهار الإعلانات",
"intervals.full.days": "{number, plural, one {# يوم} other {# أيام}}",
"intervals.full.hours": "{number, plural, one {# ساعة} other {# ساعات}}",
"intervals.full.minutes": "{number, plural, one {# دقيقة} other {# دقائق}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "لفتح قائمة المستخدِمين المكتومين",
"keyboard_shortcuts.my_profile": "لفتح ملفك التعريفي",
"keyboard_shortcuts.notifications": "لفتح عمود الإشعارات",
"keyboard_shortcuts.open_media": "لفتح الوسائط",
"keyboard_shortcuts.pinned": "لفتح قائمة التبويقات المدبسة",
"keyboard_shortcuts.profile": "لفتح الملف التعريفي للناشر",
"keyboard_shortcuts.reply": "للردّ",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "هل تود إخفاء الإخطارات القادمة من هذا المستخدم ؟",
"navigation_bar.apps": "تطبيقات الأجهزة المحمولة",
"navigation_bar.blocks": "الحسابات المحجوبة",
"navigation_bar.bookmarks": "الفواصل المرجعية",
"navigation_bar.community_timeline": "الخيط العام المحلي",
"navigation_bar.compose": "تحرير تبويق جديد",
"navigation_bar.direct": "الرسائل المباشِرة",
@ -278,7 +288,9 @@
"navigation_bar.security": "الأمان",
"notification.favourite": "أُعجِب {name} بمنشورك",
"notification.follow": "{name} يتابعك",
"notification.follow_request": "لقد طلب {name} متابعتك",
"notification.mention": "{name} ذكرك",
"notification.own_poll": "انتهى استطلاعك للرأي",
"notification.poll": "لقد إنتها تصويت شاركت فيه",
"notification.reblog": "{name} قام بترقية تبويقك",
"notifications.clear": "امسح الإخطارات",
@ -287,8 +299,9 @@
"notifications.column_settings.favourite": "المُفَضَّلة:",
"notifications.column_settings.filter_bar.advanced": "اعرض كافة الفئات",
"notifications.column_settings.filter_bar.category": "شريط الفلترة السريعة",
"notifications.column_settings.filter_bar.show": "اعرض",
"notifications.column_settings.filter_bar.show": "اظهِره",
"notifications.column_settings.follow": "متابعُون جُدُد:",
"notifications.column_settings.follow_request": "الطلبات الجديد لِمتابَعتك:",
"notifications.column_settings.mention": "الإشارات:",
"notifications.column_settings.poll": "نتائج استطلاع الرأي:",
"notifications.column_settings.push": "الإخطارات المدفوعة",
@ -304,7 +317,7 @@
"notifications.group": "{count} إشعارات",
"poll.closed": "انتهى",
"poll.refresh": "تحديث",
"poll.total_people": "{count, plural, one {# شخص} other {# أشخاص}}",
"poll.total_people": "{count, plural, one {# شخص} two {# شخصين} few {# أشخاص} many {# أشخاص} other {# أشخاص}}",
"poll.total_votes": "{count, plural, one {# صوت} other {# أصوات}}",
"poll.vote": "صَوّت",
"poll.voted": "لقد صوّتت على هذه الإجابة",
@ -327,6 +340,7 @@
"relative_time.just_now": "الآن",
"relative_time.minutes": "{number}د",
"relative_time.seconds": "{number}ثا",
"relative_time.today": "اليوم",
"reply_indicator.cancel": "إلغاء",
"report.forward": "التحويل إلى {target}",
"report.forward_hint": "هذا الحساب ينتمي إلى خادوم آخَر. هل تودّ إرسال نسخة مجهولة مِن التقرير إلى هنالك أيضًا؟",
@ -345,10 +359,11 @@
"search_results.hashtags": "الوُسوم",
"search_results.statuses": "التبويقات",
"search_results.statuses_fts_disabled": "البحث في التبويقات عن طريق المحتوى ليس مفعل في خادم ماستدون هذا.",
"search_results.total": "{count, number} {count, plural, one {result} و {results}}",
"search_results.total": "{count, number} {count, plural, zero {} one {نتيجة} two {نتيجتين} few {نتائج} many {نتائج} other {نتائج}}",
"status.admin_account": "افتح الواجهة الإدارية لـ @{name}",
"status.admin_status": "افتح هذا المنشور على واجهة الإشراف",
"status.block": "احجب @{name}",
"status.bookmark": "أضفه إلى الفواصل المرجعية",
"status.cancel_reblog_private": "إلغاء الترقية",
"status.cannot_reblog": "تعذرت ترقية هذا المنشور",
"status.copy": "نسخ رابط المنشور",
@ -374,6 +389,7 @@
"status.reblogged_by": "رقّاه {name}",
"status.reblogs.empty": "لم يقم أي أحد بترقية هذا التبويق بعد. عندما يقوم أحدهم بذلك سوف تظهر هنا.",
"status.redraft": "إزالة و إعادة الصياغة",
"status.remove_bookmark": "احذفه مِن الفواصل المرجعية",
"status.reply": "ردّ",
"status.replyAll": "رُد على الخيط",
"status.report": "ابلِغ عن @{name}",
@ -399,25 +415,28 @@
"time_remaining.minutes": "{number, plural, one {# دقيقة} other {# دقائق}} متبقية",
"time_remaining.moments": "لحظات متبقية",
"time_remaining.seconds": "{number, plural, one {# ثانية} other {# ثوانٍ}} متبقية",
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} آخرون {people}} يتحدثون",
"trends.count_by_accounts": "{count} {rawCount, plural, zero {} one {شخص واحد} two {شخصين} few {أشخاص} many {أشخاص} other {أشخاص}} تتحدّث",
"trends.trending_now": "المتداولة الآن",
"ui.beforeunload": "سوف تفقد مسودتك إن تركت ماستدون.",
"upload_area.title": "اسحب ثم أفلت للرفع",
"upload_button.label": "إضافة وسائط ({formats})",
"upload_error.limit": "لقد تم بلوغ الحد الأقصى المسموح به لإرسال الملفات.",
"upload_error.poll": "لا يمكن إدراج ملفات في استطلاعات الرأي.",
"upload_form.audio_description": "وصف للأشخاص ذي قِصر السمع",
"upload_form.description": "وصف للمعاقين بصريا",
"upload_form.edit": "تعديل",
"upload_form.undo": "حذف",
"upload_form.video_description": "وصف للمعاقين بصريا أو لِذي قِصر السمع",
"upload_modal.analyzing_picture": "جارٍ فحص الصورة…",
"upload_modal.apply": "طبّق",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
"upload_modal.description_placeholder": "نصٌّ حكيمٌ لهُ سِرٌّ قاطِعٌ وَذُو شَأنٍ عَظيمٍ مكتوبٌ على ثوبٍ أخضرَ ومُغلفٌ بجلدٍ أزرق",
"upload_modal.detect_text": "اكتشف النص مِن الصورة",
"upload_modal.edit_media": "تعديل الوسائط",
"upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
"upload_modal.hint": "اضغط أو اسحب الدائرة على خانة المعاينة لاختيار نقطة التركيز التي ستُعرَض دائمًا على كل المصغرات.",
"upload_modal.preview_label": "معاينة ({ratio})",
"upload_progress.label": "يرفع...",
"video.close": "إغلاق الفيديو",
"video.download": "تنزيل الملف",
"video.exit_fullscreen": "الخروج من وضع الشاشة المليئة",
"video.expand": "توسيع الفيديو",
"video.fullscreen": "ملء الشاشة",

View File

@ -1,56 +1,59 @@
{
"account.add_or_remove_from_list": "Add or Remove from lists",
"account.badges.bot": "Robó",
"account.badges.group": "Grupu",
"account.block": "Bloquiar a @{name}",
"account.block_domain": "Anubrir tolo de {domain}",
"account.blocked": "Blocked",
"account.cancel_follow_request": "Cancel follow request",
"account.cancel_follow_request": "Encaboxar la solicitú de siguimientu",
"account.direct": "Unviar un mensaxe direutu a @{name}",
"account.domain_blocked": "Dominiu anubríu",
"account.edit_profile": "Editar el perfil",
"account.endorse": "Destacar nel perfil",
"account.follow": "Follow",
"account.follow": "Siguir",
"account.followers": "Siguidores",
"account.followers.empty": "Naide sigue a esti usuariu entá.",
"account.follows": "Sigue a",
"account.follows": "Follows",
"account.follows.empty": "Esti usuariu entá nun sigue a naide.",
"account.follows_you": "Síguete",
"account.hide_reblogs": "Hide boosts from @{name}",
"account.hide_reblogs": "Anubrir les comparticiones de @{name}",
"account.last_status": "Last active",
"account.link_verified_on": "Ownership of this link was checked on {date}",
"account.locked_info": "This account privacy status is set to locked. The owner manually reviews who can follow them.",
"account.media": "Media",
"account.mention": "Mentar a @{name}",
"account.moved_to": "{name} has moved to:",
"account.moved_to": "{name} mudóse a:",
"account.mute": "Silenciar a @{name}",
"account.mute_notifications": "Mute notifications from @{name}",
"account.muted": "Muted",
"account.never_active": "Never",
"account.posts": "Posts",
"account.posts_with_replies": "Toots y rempuestes",
"account.never_active": "Enxamás",
"account.posts": "Barritos",
"account.posts_with_replies": "Barritos y rempuestes",
"account.report": "Report @{name}",
"account.requested": "Awaiting approval",
"account.requested": "Esperando pola aprobación. Calca pa encaboxar la solicitú de siguimientu",
"account.share": "Share @{name}'s profile",
"account.show_reblogs": "Show boosts from @{name}",
"account.show_reblogs": "Amosar les comparticiones de @{name}",
"account.unblock": "Desbloquiar a @{name}",
"account.unblock_domain": "Amosar {domain}",
"account.unendorse": "Don't feature on profile",
"account.unfollow": "Unfollow",
"account.unendorse": "Nun destacar nel perfil",
"account.unfollow": "Dexar de siguir",
"account.unmute": "Unmute @{name}",
"account.unmute_notifications": "Unmute notifications from @{name}",
"alert.rate_limited.message": "Please retry after {retry_time, time, medium}.",
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "Asocedió un fallu inesperáu.",
"alert.unexpected.title": Ups!",
"autosuggest_hashtag.per_week": "{count} per week",
"alert.unexpected.title": Meca!",
"announcement.announcement": "Anunciu",
"autosuggest_hashtag.per_week": "{count} per selmana",
"boost_modal.combo": "Pues primir {combo} pa saltar esto la próxima vegada",
"bundle_column_error.body": "Something went wrong while loading this component.",
"bundle_column_error.body": "Asocedió daqué malo mentanto se cargaba esti componente.",
"bundle_column_error.retry": "Try again",
"bundle_column_error.title": "Network error",
"bundle_modal_error.close": "Close",
"bundle_modal_error.message": "Something went wrong while loading this component.",
"bundle_modal_error.message": "Asocedió daqué malo mentanto se cargaba esti componente.",
"bundle_modal_error.retry": "Try again",
"column.blocks": "Usuarios bloquiaos",
"column.bookmarks": "Marcadores",
"column.community": "Llinia temporal llocal",
"column.direct": "Mensaxes direutos",
"column.directory": "Browse profiles",
@ -61,98 +64,101 @@
"column.lists": "Llistes",
"column.mutes": "Usuarios silenciaos",
"column.notifications": "Avisos",
"column.pins": "Toots fixaos",
"column.pins": "Barritos fixaos",
"column.public": "Llinia temporal federada",
"column_back_button.label": "Atrás",
"column_header.hide_settings": "Hide settings",
"column_header.moveLeft_settings": "Mover la columna a la esquierda",
"column_header.moveRight_settings": "Mover la columna a la drecha",
"column_header.pin": "Fixar",
"column_header.show_settings": "Show settings",
"column_header.show_settings": "Amosar axustes",
"column_header.unpin": "Desfixar",
"column_subheading.settings": "Axustes",
"community.column_settings.media_only": "Media only",
"compose_form.direct_message_warning": "Esti toot namái va unviase a los usuarios mentaos.",
"community.column_settings.media_only": "Namái multimedia",
"compose_form.direct_message_warning": "Esti barritu namái va unviase a los usuarios mentaos.",
"compose_form.direct_message_warning_learn_more": "Learn more",
"compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.",
"compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.",
"compose_form.lock_disclaimer.lock": "locked",
"compose_form.placeholder": "¿En qué pienses?",
"compose_form.poll.add_option": "Add a choice",
"compose_form.poll.add_option": "Amestar una escoyeta",
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.publish": "Toot",
"compose_form.poll.option_placeholder": "Escoyeta {number}",
"compose_form.poll.remove_option": "Desaniciar esta escoyeta",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Barritar",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Mark media as sensitive",
"compose_form.sensitive.marked": "Media is marked as sensitive",
"compose_form.sensitive.unmarked": "Media is not marked as sensitive",
"compose_form.spoiler.marked": "El testu nun va anubrise darrera d'una alvertencia",
"compose_form.spoiler.unmarked": "El testu va anubrise",
"compose_form.spoiler_placeholder": "Escribi equí l'avertencia",
"compose_form.spoiler.unmarked": "El testu nun va anubrise",
"compose_form.spoiler_placeholder": "Escribi equí l'alvertencia",
"confirmation_modal.cancel": "Encaboxar",
"confirmations.block.block_and_report": "Block & Report",
"confirmations.block.confirm": "Block",
"confirmations.block.block_and_report": "Bloquiar ya informar",
"confirmations.block.confirm": "Bloquiar",
"confirmations.block.message": "¿De xuru que quies bloquiar a {name}?",
"confirmations.delete.confirm": "Delete",
"confirmations.delete.confirm": "Desaniciar",
"confirmations.delete.message": "¿De xuru que quies desaniciar esti estáu?",
"confirmations.delete_list.confirm": "Desaniciar",
"confirmations.delete_list.message": "¿De xuru que quies desaniciar dafechu esta llista?",
"confirmations.domain_block.confirm": "Anubrir tol dominiu",
"confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.",
"confirmations.logout.confirm": "Log out",
"confirmations.logout.message": "Are you sure you want to log out?",
"confirmations.mute.confirm": "Mute",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.domain_block.message": "¿De xuru xurísimu que quies bloquiar el dominiu {domain} enteru? Na mayoría de casos bloquiar o silenciar dalguna cuenta ye abondo y preferible. Nun vas ver el conteníu d'esi dominiu en nenguna llinia temporal pública o nos avisos, y van desanciase los tos siguidores d'esi dominiu.",
"confirmations.logout.confirm": "Zarrar sesión",
"confirmations.logout.message": "¿De xuru que quies zarrar la sesión?",
"confirmations.mute.confirm": "Silenciar",
"confirmations.mute.explanation": "Esto va anubrir los espublizamientos y les sos menciones pero entá va permiti-yos ver los tos espublizamientos y siguite.",
"confirmations.mute.message": "¿De xuru que quies silenciar a {name}?",
"confirmations.redraft.confirm": "Desaniciar y reeditar",
"confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? You will lose all replies, boosts and favourites to it.",
"confirmations.reply.confirm": "Reply",
"confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"confirmations.unfollow.confirm": "Unfollow",
"confirmations.redraft.message": "¿De xuru que quies desaniciar esti estáu y reeditalu? Van perdese los favoritos y comparticiones, y les rempuestes al toot orixinal van quedar güérfanes.",
"confirmations.reply.confirm": "Responder",
"confirmations.reply.message": "Responder agora va sobrescribir el mensaxe que tas componiendo anguaño. ¿De xuru que quies siguir?",
"confirmations.unfollow.confirm": "Dexar de siguir",
"confirmations.unfollow.message": "¿De xuru que quies dexar de siguir a {name}?",
"conversation.delete": "Delete conversation",
"conversation.mark_as_read": "Mark as read",
"conversation.open": "View conversation",
"conversation.with": "With {names}",
"directory.federated": "From known fediverse",
"directory.local": "From {domain} only",
"directory.new_arrivals": "New arrivals",
"conversation.with": "Con {names}",
"directory.federated": "Dende'l fediversu",
"directory.local": "Dende {domain} namái",
"directory.new_arrivals": "Cuentes nueves",
"directory.recently_active": "Recently active",
"embed.instructions": "Empotra esti estáu nun sitiu web copiando'l códigu d'embaxo.",
"embed.preview": "Asina ye como va vese:",
"embed.preview": "Asina ye cómo va vese:",
"emoji_button.activity": "Actividaes",
"emoji_button.custom": "Custom",
"emoji_button.flags": "Banderes",
"emoji_button.food": "Comida y bébora",
"emoji_button.label": "Insert emoji",
"emoji_button.label": "Inxertar un fustaxe",
"emoji_button.nature": "Natura",
"emoji_button.not_found": "¡Nun hai fustaxes! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "Oxetos",
"emoji_button.people": "Xente",
"emoji_button.recent": "Úsase davezu",
"emoji_button.search": "Guetar...",
"emoji_button.search": "Guetar",
"emoji_button.search_results": "Search results",
"emoji_button.symbols": "Símbolos",
"emoji_button.travel": "Viaxes y llugares",
"empty_column.account_timeline": "No toots here!",
"empty_column.account_timeline": "¡Equí nun hai barritos!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "Entá nun bloquiesti a dengún usuariu.",
"empty_column.blocks": "Entá nun bloquiesti a nunengún usuariu.",
"empty_column.bookmarked_statuses": "Entá nun tienes nengún barritu en Marcadores. Cuando amiestes unu, va amosase equí.",
"empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
"empty_column.direct": "Entá nun tienes dengún mensaxe direutu. Cuando unvies o recibas dalgún, va apaecer equí.",
"empty_column.direct": "Entá nun tienes nunengún mensaxe direutu. Cuando unvies o recibas dalgún, va apaecer equí.",
"empty_column.domain_blocks": "Entá nun hai dominios anubríos.",
"empty_column.favourited_statuses": "You don't have any favourite posts yet. When you favourite one, it will show up here.",
"empty_column.favourited_statuses": "Entá nun tienes nengún barritu en Favoritos. Cuando amiestes unu, va amosase equí.",
"empty_column.favourites": "No one has favourited this toot yet. When someone does, they will show up here.",
"empty_column.follow_requests": "Entá nun tienes denguna solicitú de siguimientu. Cuando recibas una, va amosase equí.",
"empty_column.hashtag": "There is nothing in this hashtag yet.",
"empty_column.follow_requests": "Entá nun tienes nenguna solicitú de siguimientu. Cuando recibas una, va amosase equí.",
"empty_column.hashtag": "Entá nun hai nada nesta etiqueta.",
"empty_column.home": "¡Tienes la llinia temporal balera! Visita {public} o usa la gueta pa entamar y conocer a otros usuarios.",
"empty_column.home.public_timeline": "la llinia temporal pública",
"empty_column.list": "Entá nun hai nada nesta llista. Cuando los miembros d'esta llista espublicen estaos nuevos, van apaecer equí.",
"empty_column.lists": "Entá nun tienes denguna llista. Cuando crees una, va amosase equí.",
"empty_column.mutes": "Entá nun silenciesti a dengún usuariu.",
"empty_column.notifications": "Entá nun tienes dengún avisu. Interactua con otros p'aniciar la conversación.",
"empty_column.public": "There is nothing here! Write something publicly, or manually follow users from other instances to fill it up",
"error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
"empty_column.lists": "Entá nun tienes nunenguna llista. Cuando crees una, va amosase equí.",
"empty_column.mutes": "Entá nun silenciesti a nunengún usuariu.",
"empty_column.notifications": "Entá nun tienes nunengún avisu. Interactúa con otros p'aniciar la conversación.",
"empty_column.public": "¡Equí nun hai nada! Escribi daqué público o sigui a usuarios d'otros sirvidores pa rellenar esto",
"error.unexpected_crash.explanation": "Pola mor d'un fallu nel códigu o un problema de compatibilidá del restolador, esta páxina nun pudo amosase correutamente.",
"error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.report_issue": "Report issue",
@ -164,55 +170,57 @@
"follow_request.authorize": "Autorizar",
"follow_request.reject": "Refugar",
"getting_started.developers": "Desendolcadores",
"getting_started.directory": "Profile directory",
"getting_started.directory": "Direutoriu de perfiles",
"getting_started.documentation": "Documentación",
"getting_started.heading": "Entamu",
"getting_started.invite": "Convidar xente",
"getting_started.open_source_notice": "Mastodon ye software de códigu abiertu. Pues collaborar o informar de fallos en {github} (GitHub).",
"getting_started.security": "Seguranza",
"getting_started.invite": "Convidar a persones",
"getting_started.open_source_notice": "Mastodon ye software de códigu abiertu. Pues collaborar o informar de fallos en GitHub: {github}.",
"getting_started.security": "Axustes de la cuenta",
"getting_started.terms": "Términos del serviciu",
"hashtag.column_header.tag_mode.all": "and {additional}",
"hashtag.column_header.tag_mode.any": "or {additional}",
"hashtag.column_header.tag_mode.none": "without {additional}",
"hashtag.column_settings.select.no_options_message": "No suggestions found",
"hashtag.column_header.tag_mode.all": "y {additional}",
"hashtag.column_header.tag_mode.any": "o {additional}",
"hashtag.column_header.tag_mode.none": "ensin {additional}",
"hashtag.column_settings.select.no_options_message": "Nun s'alcontraron suxerencies",
"hashtag.column_settings.select.placeholder": "Enter hashtags…",
"hashtag.column_settings.tag_mode.all": "All of these",
"hashtag.column_settings.tag_mode.any": "Any of these",
"hashtag.column_settings.tag_mode.none": "None of these",
"hashtag.column_settings.tag_toggle": "Include additional tags in this column",
"hashtag.column_settings.tag_mode.all": "Toes estes",
"hashtag.column_settings.tag_mode.any": "Cualesquiera d'estes",
"hashtag.column_settings.tag_mode.none": "Nenguna d'estes",
"hashtag.column_settings.tag_toggle": "Incluyir les etiquetes adicionales d'esta columna",
"home.column_settings.basic": "Basic",
"home.column_settings.show_reblogs": "Amosar toots compartíos",
"home.column_settings.show_replies": "Amosar rempuestes",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
"introduction.federation.action": "Next",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# día} other {# es}}",
"intervals.full.hours": "{number, plural, one {# hora} other {# hores}}",
"intervals.full.minutes": "{number, plural, one {# minutu} other {# minutos}}",
"introduction.federation.action": "Siguiente",
"introduction.federation.federated.headline": "Federated",
"introduction.federation.federated.text": "Public posts from other servers of the fediverse will appear in the federated timeline.",
"introduction.federation.federated.text": "Los espublizamientos públicos de los demás sirvidores del fediversu van apaecer na llinia temporal federada.",
"introduction.federation.home.headline": "Home",
"introduction.federation.home.text": "Posts from people you follow will appear in your home feed. You can follow anyone on any server!",
"introduction.federation.local.headline": "Local",
"introduction.federation.local.text": "Public posts from people on the same server as you will appear in the local timeline.",
"introduction.interactions.action": "Finish tutorial!",
"introduction.interactions.action": "¡Finar el tutorial!",
"introduction.interactions.favourite.headline": "Favourite",
"introduction.interactions.favourite.text": "You can save a post for later, and let the author know that you liked it, by favouriting it.",
"introduction.interactions.favourite.text": "Pues guardar un barritu pa dempués y facer que l'autor sepa que te prestó marcándolu como favoritu.",
"introduction.interactions.reblog.headline": "Boost",
"introduction.interactions.reblog.text": "You can share other people's posts with your followers by boosting them.",
"introduction.interactions.reply.headline": "Reply",
"introduction.interactions.reply.text": "You can reply to other people's and your own posts, which will chain them together in a conversation.",
"introduction.welcome.action": "Let's go!",
"introduction.welcome.headline": "First steps",
"introduction.welcome.text": "Welcome to the fediverse! In a few moments, you'll be able to broadcast messages and talk to your friends across a wide variety of servers. But this server, {domain}, is special—it hosts your profile, so remember its name.",
"introduction.interactions.reply.text": "You can reply to other people's and your own toots, which will chain them together in a conversation.",
"introduction.welcome.action": "¡Vamos!",
"introduction.welcome.headline": "Primeros pasos",
"introduction.welcome.text": "¡Afáyate nel fediversu! Nun momentu vas ser a tresmitir mensaxes y falar colos collacios d'una montonera de sirvidores. Pero esti sirvidor, {domain}, ye especial: agospia'l to perfil, asina qu'alcuérdate de cómo se llama.",
"keyboard_shortcuts.back": "pa dir p'atrás",
"keyboard_shortcuts.blocked": "p'abrir la llista d'usuarios bloquiaos",
"keyboard_shortcuts.boost": "pa compartir un toot",
"keyboard_shortcuts.column": "to focus a status in one of the columns",
"keyboard_shortcuts.compose": "to focus the compose textarea",
"keyboard_shortcuts.compose": "pa enfocar l'área de composición",
"keyboard_shortcuts.description": "Descripción",
"keyboard_shortcuts.direct": "p'abrir la columna de los mensaxes direutos",
"keyboard_shortcuts.down": "pa baxar na llista",
"keyboard_shortcuts.enter": "to open status",
"keyboard_shortcuts.favourite": "to favourite",
"keyboard_shortcuts.enter": "p'abrir estaos",
"keyboard_shortcuts.favourite": "p'amestar a Favoritos",
"keyboard_shortcuts.favourites": "p'abrir la llista de favoritos",
"keyboard_shortcuts.federated": "p'abrir la llinia temporal federada",
"keyboard_shortcuts.heading": "Atayos del tecláu",
@ -222,18 +230,19 @@
"keyboard_shortcuts.local": "p'abrir la llinia temporal llocal",
"keyboard_shortcuts.mention": "pa mentar al autor",
"keyboard_shortcuts.muted": "p'abrir la llista d'usuarios silenciaos",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.my_profile": "p'abrir el to perfil",
"keyboard_shortcuts.notifications": "p'abrir la columna d'avisos",
"keyboard_shortcuts.pinned": "p'abrir la llista de toots fixaos",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "p'abrir la llista de barritos fixaos",
"keyboard_shortcuts.profile": "p'abrir el perfil del autor",
"keyboard_shortcuts.reply": "pa responder",
"keyboard_shortcuts.requests": "p'abrir la llista de solicitúes de siguimientu",
"keyboard_shortcuts.search": "to focus search",
"keyboard_shortcuts.search": "pa enfocar la gueta",
"keyboard_shortcuts.start": "p'abrir la columna «entamar»",
"keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW",
"keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
"keyboard_shortcuts.toot": "p'apenzar un toot nuevu",
"keyboard_shortcuts.unfocus": "to un-focus compose textarea/search",
"keyboard_shortcuts.toot": "p'apenzar un barritu nuevu",
"keyboard_shortcuts.unfocus": "pa desenfocar l'área de composición/gueta",
"keyboard_shortcuts.up": "pa xubir na llista",
"lightbox.close": "Close",
"lightbox.next": "Siguiente",
@ -248,14 +257,15 @@
"lists.new.title_placeholder": "Títulu nuevu de la llista",
"lists.search": "Guetar ente la xente que sigues",
"lists.subheading": "Les tos llistes",
"load_pending": "{count, plural, one {# new item} other {# new items}}",
"loading_indicator.label": "Cargando...",
"media_gallery.toggle_visible": "Toggle visibility",
"load_pending": "{count, plural, one {# elementu nuevu} other {# elementos nuevos}}",
"loading_indicator.label": "Cargando",
"media_gallery.toggle_visible": "Alternar la visibili",
"missing_indicator.label": "Nun s'alcontró",
"missing_indicator.sublabel": "Esti recursu nun pudo alcontrase",
"mute_modal.hide_notifications": "Hide notifications from this user?",
"mute_modal.hide_notifications": "¿Anubrir los avisos d'esti usuariu?",
"navigation_bar.apps": "Aplicaciones pa móviles",
"navigation_bar.blocks": "Usuarios bloquiaos",
"navigation_bar.bookmarks": "Marcadores",
"navigation_bar.community_timeline": "Llinia temporal llocal",
"navigation_bar.compose": "Compose new toot",
"navigation_bar.direct": "Mensaxes direutos",
@ -272,44 +282,47 @@
"navigation_bar.logout": "Zarrar sesión",
"navigation_bar.mutes": "Usuarios silenciaos",
"navigation_bar.personal": "Personal",
"navigation_bar.pins": "Toots fixaos",
"navigation_bar.pins": "Barritos fixaos",
"navigation_bar.preferences": "Preferencies",
"navigation_bar.public_timeline": "Llinia temporal federada",
"navigation_bar.security": "Seguranza",
"notification.favourite": "{name} favourited your status",
"notification.follow": "{name} siguióte",
"notification.follow_request": "{name} solicitó siguite",
"notification.mention": "{name} mentóte",
"notification.poll": "A poll you have voted in has ended",
"notification.own_poll": "Your poll has ended",
"notification.poll": "Finó una encuesta na que votesti",
"notification.reblog": "{name} compartió'l to estáu",
"notifications.clear": "Llimpiar avisos",
"notifications.clear_confirmation": "¿De xuru que quies llimpiar dafechu tolos avisos?",
"notifications.column_settings.alert": "Avisos d'escritoriu",
"notifications.column_settings.favourite": "Favoritos:",
"notifications.column_settings.filter_bar.advanced": "Display all categories",
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.filter_bar.advanced": "Amosar toles estayes",
"notifications.column_settings.filter_bar.category": "Barra de peñera rápida",
"notifications.column_settings.filter_bar.show": "Amosar",
"notifications.column_settings.follow": "Siguidores nuevos:",
"notifications.column_settings.follow_request": "Solicitúes de siguimientu nueves:",
"notifications.column_settings.mention": "Menciones:",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.poll": "Resultaos d'encuestes:",
"notifications.column_settings.push": "Push notifications",
"notifications.column_settings.reblog": "Toots compartíos:",
"notifications.column_settings.reblog": "Barritos compartíos:",
"notifications.column_settings.show": "Amosar en columna",
"notifications.column_settings.sound": "Reproducir soníu",
"notifications.filter.all": "All",
"notifications.column_settings.sound": "Reproducir un soníu",
"notifications.filter.all": "Too",
"notifications.filter.boosts": "Boosts",
"notifications.filter.favourites": "Favourites",
"notifications.filter.follows": "Follows",
"notifications.filter.mentions": "Mentions",
"notifications.filter.mentions": "Menciones",
"notifications.filter.polls": "Poll results",
"notifications.group": "{count} avisos",
"poll.closed": "Closed",
"poll.closed": "Acabó",
"poll.refresh": "Refresh",
"poll.total_people": "{count, plural, one {# person} other {# people}}",
"poll.total_votes": "{count, plural, one {# vote} other {# votes}}",
"poll.total_people": "{count, plural, one {# persona} other {# persones}}",
"poll.total_votes": "{count, plural, one {# votu} other {# votos}}",
"poll.vote": "Vote",
"poll.voted": "You voted for this answer",
"poll_button.add_poll": "Add a poll",
"poll_button.remove_poll": "Remove poll",
"poll_button.add_poll": "Amestar una encuesta",
"poll_button.remove_poll": "Desaniciar la encuesta",
"privacy.change": "Adjust status privacy",
"privacy.direct.long": "Post to mentioned users only",
"privacy.direct.short": "Direct",
@ -317,24 +330,25 @@
"privacy.private.short": "Namái siguidores",
"privacy.public.long": "Post to public timelines",
"privacy.public.short": "Public",
"privacy.unlisted.long": "Do not show in public timelines",
"privacy.unlisted.short": "Unlisted",
"privacy.unlisted.long": "Nun apaez nes llinies temporales públiques",
"privacy.unlisted.short": "Nun llistar",
"refresh": "Refresh",
"regeneration_indicator.label": "Cargando…",
"regeneration_indicator.sublabel": "Your home feed is being prepared!",
"regeneration_indicator.sublabel": "¡Tamos tresnando'l feed d'Aniciu!",
"relative_time.days": "{number}d",
"relative_time.hours": "{number}h",
"relative_time.just_now": "agora",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "güei",
"reply_indicator.cancel": "Encaboxar",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
"report.hint": "The report will be sent to your instance moderators. You can provide an explanation of why you are reporting this account below:",
"report.hint": "L'informe va unviase a los llendadores del to sirvidor. Embaxo, pues desplicar por qué informes d'esta cuenta:",
"report.placeholder": "Comentarios adicionales",
"report.submit": "Submit",
"report.submit": "Unviar",
"report.target": "Report {target}",
"search.placeholder": "Search",
"search.placeholder": "Guetar",
"search_popout.search_format": "Formatu de gueta avanzada",
"search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
"search_popout.tips.hashtag": "etiqueta",
@ -343,81 +357,85 @@
"search_popout.tips.user": "usuariu",
"search_results.accounts": "Xente",
"search_results.hashtags": "Etiquetes",
"search_results.statuses": "Toots",
"search_results.statuses_fts_disabled": "Searching toots by their content is not enabled on this Mastodon server.",
"search_results.total": "{count, number} {count, plural, one {result} other {results}}",
"search_results.statuses": "Barritos",
"search_results.statuses_fts_disabled": "Esti sirvidor de Mastodon tien activada la gueta de barritos pol so conteníu.",
"search_results.total": "{count, number} {count, plural, one {resultáu} other {resultaos}}",
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Bloquiar a @{name}",
"status.bookmark": "Amestar a Marcadores",
"status.cancel_reblog_private": "Dexar de compartir",
"status.cannot_reblog": "Esti artículu nun pue compartise",
"status.copy": "Copy link to status",
"status.delete": "Delete",
"status.copy": "Copiar l'enllaz al estáu",
"status.delete": "Desaniciar",
"status.detailed_status": "Detailed conversation view",
"status.direct": "Unviar un mensaxe direutu a @{name}",
"status.embed": "Empotrar",
"status.favourite": "Favourite",
"status.filtered": "Filtered",
"status.load_more": "Cargar más",
"status.local_only": "This post is only visible by other users of your instance",
"status.media_hidden": "Mediu anubríu",
"status.media_hidden": "Multimedia anubrida",
"status.mention": "Mentar a @{name}",
"status.more": "Más",
"status.mute": "Silenciar a @{name}",
"status.mute_conversation": "Silenciar la conversación",
"status.open": "Espander esti estáu",
"status.pin": "Fixar nel perfil",
"status.pinned": "Toot fixáu",
"status.pinned": "Barritu fixáu",
"status.read_more": "Read more",
"status.reblog": "Compartir",
"status.reblog_private": "Compartir cola audiencia orixinal",
"status.reblogged_by": "{name} compartió",
"status.reblogs.empty": "Naide nun compartió esti toot entá. Cuando daquién lo faiga, va amosase equí.",
"status.reblogs.empty": "Naide nun compartió esti barritu entá. Cuando daquién lo faiga, va amosase equí.",
"status.redraft": "Desaniciar y reeditar",
"status.remove_bookmark": "Desaniciar de Marcadores",
"status.reply": "Responder",
"status.replyAll": "Reply to thread",
"status.report": "Report @{name}",
"status.sensitive_warning": "Conteníu sensible",
"status.share": "Share",
"status.show_less": "Amosar menos",
"status.show_less_all": "Show less for all",
"status.show_less_all": "Amosar menos en too",
"status.show_more": "Amosar más",
"status.show_more_all": "Show more for all",
"status.show_thread": "Show thread",
"status.uncached_media_warning": "Not available",
"status.show_more_all": "Amosar más en too",
"status.show_thread": "Amosar el filu",
"status.uncached_media_warning": "Non disponible",
"status.unmute_conversation": "Unmute conversation",
"status.unpin": "Desfixar del perfil",
"suggestions.dismiss": "Dismiss suggestion",
"suggestions.header": "You might be interested in…",
"tabs_bar.federated_timeline": "Federated",
"suggestions.header": "Quiciabes t'interese…",
"tabs_bar.federated_timeline": "Fediversu",
"tabs_bar.home": "Aniciu",
"tabs_bar.local_timeline": "Llocal",
"tabs_bar.notifications": "Avisos",
"tabs_bar.search": "Search",
"time_remaining.days": "{number, plural, one {# day} other {# days}} left",
"time_remaining.hours": "{number, plural, one {# hour} other {# hours}} left",
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
"time_remaining.days": "{number, plural, one {Queda # día} other {Queden # díes}}",
"time_remaining.hours": "{number, plural, one {# hora restante} other {# hores restantes}}",
"time_remaining.minutes": "{number, plural, one {# minutu restante} other {# minutos restantes}}",
"time_remaining.moments": "Moments remaining",
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
"time_remaining.seconds": "{number, plural, one {# segundu restante} other {# segundos restantes}}",
"trends.count_by_accounts": "{count} {rawCount, plural, one {persona} other {persones}} falando",
"trends.trending_now": "Trending now",
"ui.beforeunload": "El borrador va perdese si coles de Mastodon.",
"upload_area.title": "Drag & drop to upload",
"upload_button.label": "Add media",
"upload_area.title": "Arrastra y suelta pa xubir",
"upload_button.label": "Add media ({formats})",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_error.poll": "La xuba de ficheros nun ta permitida con encuestes.",
"upload_form.audio_description": "Descripción pa persones con perda auditiva",
"upload_form.description": "Descripción pa discapacitaos visuales",
"upload_form.edit": "Edit",
"upload_form.edit": "Editar",
"upload_form.undo": "Desaniciar",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_form.video_description": "Descripción pa persones con perda auditiva o discapacidá visual",
"upload_modal.analyzing_picture": "Analizando la semeya…",
"upload_modal.apply": "Aplicar",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
"upload_modal.detect_text": "Detect text from picture",
"upload_modal.edit_media": "Edit media",
"upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
"upload_modal.preview_label": "Preview ({ratio})",
"upload_progress.label": "Xubiendo...",
"upload_modal.detect_text": "Deteutar el testu de la semeya",
"upload_modal.edit_media": "Edición",
"upload_modal.hint": "Calca o arrastra'l círculu de la previsualización pa escoyer el puntu d'enfoque que va amosase siempres en toles miniatures.",
"upload_modal.preview_label": "Previsualización ({ratio})",
"upload_progress.label": "Xubiendo",
"video.close": "Zarrar el videu",
"video.download": "Download file",
"video.exit_fullscreen": "Colar de la pantalla completa",
"video.expand": "Espander el videu",
"video.fullscreen": "Pantalla completa",

View File

@ -1,22 +1,23 @@
{
"account.add_or_remove_from_list": "Добави или премахни от списъците",
"account.badges.bot": "бот",
"account.badges.group": "Group",
"account.block": "Блокирай",
"account.block_domain": "скрий всичко от (домейн)",
"account.blocked": "Блокирани",
"account.cancel_follow_request": "Cancel follow request",
"account.cancel_follow_request": "Откажи искането за следване",
"account.direct": "Direct Message @{name}",
"account.domain_blocked": "Скрит домейн",
"account.edit_profile": "Редактирай профила си",
"account.endorse": "Feature on profile",
"account.endorse": "Характеристика на профила",
"account.follow": "Последвай",
"account.followers": "Последователи",
"account.followers.empty": "No one follows this user yet.",
"account.followers.empty": "Все още никой не следва този потребител.",
"account.follows": "Следвам",
"account.follows.empty": "This user doesn't follow anyone yet.",
"account.follows.empty": "Този потребител все още не следва никого.",
"account.follows_you": "Твой последовател",
"account.hide_reblogs": "Hide boosts from @{name}",
"account.last_status": "Last active",
"account.last_status": "Последно активен/а",
"account.link_verified_on": "Ownership of this link was checked on {date}",
"account.locked_info": "This account privacy status is set to locked. The owner manually reviews who can follow them.",
"account.media": "Media",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "An unexpected error occurred.",
"alert.unexpected.title": "Oops!",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} per week",
"boost_modal.combo": "You can press {combo} to skip this next time",
"bundle_column_error.body": "Something went wrong while loading this component.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Something went wrong while loading this component.",
"bundle_modal_error.retry": "Try again",
"column.blocks": "Blocked users",
"column.bookmarks": "Bookmarks",
"column.community": "Local timeline",
"column.direct": "Direct messages",
"column.directory": "Browse profiles",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Раздумай",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Mark media as sensitive",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "No toots here!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "You haven't blocked any users yet.",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
"empty_column.domain_blocks": "There are no hidden domains yet.",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Basic",
"home.column_settings.show_reblogs": "Show boosts",
"home.column_settings.show_replies": "Show replies",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "to open muted users list",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.notifications": "to open notifications column",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "to open pinned posts list",
"keyboard_shortcuts.profile": "to open author's profile",
"keyboard_shortcuts.reply": "to reply",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Hide notifications from this user?",
"navigation_bar.apps": "Mobile apps",
"navigation_bar.blocks": "Blocked users",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "Local timeline",
"navigation_bar.compose": "Compose new toot",
"navigation_bar.direct": "Direct messages",
@ -278,7 +288,9 @@
"navigation_bar.security": "Security",
"notification.favourite": "{name} хареса твоята публикация",
"notification.follow": "{name} те последва",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} те спомена",
"notification.own_poll": "Your poll has ended",
"notification.poll": "A poll you have voted in has ended",
"notification.reblog": "{name} сподели твоята публикация",
"notifications.clear": "Clear notifications",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.follow": "Нови последователи:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "Споменавания:",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.push": "Push notifications",
@ -327,6 +340,7 @@
"relative_time.just_now": "now",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "today",
"reply_indicator.cancel": "Отказ",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
@ -349,6 +363,7 @@
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Block @{name}",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "Unboost",
"status.cannot_reblog": "This post cannot be boosted",
"status.copy": "Copy link to status",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name} сподели",
"status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "Отговор",
"status.replyAll": "Reply to thread",
"status.report": "Report @{name}",
@ -406,9 +422,11 @@
"upload_button.label": "Добави медия",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Describe for the visually impaired",
"upload_form.edit": "Edit",
"upload_form.undo": "Отмяна",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Preview ({ratio})",
"upload_progress.label": "Uploading…",
"video.close": "Close video",
"video.download": "Download file",
"video.exit_fullscreen": "Exit full screen",
"video.expand": "Expand video",
"video.fullscreen": "Full screen",

View File

@ -1,60 +1,63 @@
{
"account.add_or_remove_from_list": "তালিকাতে আরো যুক্ত বা মুছে ফেলুন",
"account.badges.bot": "রোবট",
"account.block": "@{name} কে বন্ধ করুন",
"account.block_domain": "{domain} থেকে সব সরিয়ে ফেলুন",
"account.blocked": "বন্ধ করা হয়েছে",
"account.cancel_follow_request": "Cancel follow request",
"account.direct": "@{name} এর কাছে সরকারি লেখা পাঠাতে",
"account.domain_blocked": "ওয়েবসাইট সরিয়ে ফেলা হয়েছে",
"account.edit_profile": "নিজের পাতা সম্পাদনা করতে",
"account.endorse": "আপনার নিজের পাতায় দেখাতে",
"account.add_or_remove_from_list": "তালিকাতে যুক্ত বা অপসারণ করুন",
"account.badges.bot": "বট",
"account.badges.group": "Group",
"account.block": "@{name} কে ব্লক করুন",
"account.block_domain": "{domain} থেকে সব আড়াল করুন",
"account.blocked": "অবরুদ্ধ",
"account.cancel_follow_request": "অনুসরণ অনুরোধ বাতিল করুন",
"account.direct": "@{name} কে সরাসরি বার্তা",
"account.domain_blocked": "ডোমেন গোপন করুন",
"account.edit_profile": "প্রোফাইল পরিবর্তন করুন",
"account.endorse": "নিজের পাতায় দেখান",
"account.follow": "অনুসরণ করুন",
"account.followers": "অনুসরণকার",
"account.followers.empty": "এই ব্যবহারকারীকে কেও এখনো অনুসরণ করে না।",
"account.followers": "অনুসরণকার",
"account.followers.empty": "এই সদস্যকে এখনো কেউ অনুসরণ করে না।.",
"account.follows": "যাদেরকে অনুসরণ করেন",
"account.follows.empty": "এই ব্যবহারকারী কাওকে এখনো অনুসরণ করেন না",
"account.follows.empty": "এই সদস্য কাওকে এখনো অনুসরণ করেন না.",
"account.follows_you": "আপনাকে অনুসরণ করে",
"account.hide_reblogs": "@{name}র সমর্থনগুলি সরিয়ে ফেলুন",
"account.last_status": "Last active",
"account.link_verified_on": "এই লিংকের মালিকানা চেক করা হয়েছে {date} তারিে",
"account.hide_reblogs": "@{name}'র সমর্থনগুলি লুকিয়ে ফেলুন",
"account.last_status": "শেষ সক্রিয় ছিল",
"account.link_verified_on": "এই লিংকের মালিকানা চেক করা হয়েছে {date} তারিে",
"account.locked_info": "এই নিবন্ধনের গোপনীয়তার ক্ষেত্র তালা দেওয়া আছে। নিবন্ধনকারী অনুসরণ করার অনুমতি যাদেরকে দেবেন, শুধু তারাই অনুসরণ করতে পারবেন।",
"account.media": "ছবি বা ভিডিও",
"account.mention": "@{name} কে উল্লেখ করতে",
"account.moved_to": "{name} চলে গেছে এখানে:",
"account.mute": "@{name} সব কার্যক্রম আপনার সময়রেখা থেকে সরিয়ে ফেলতে",
"account.mute_notifications": "@{name}র প্রজ্ঞাপন আপনার কাছ থেকে সরিয়ে ফেলুন",
"account.muted": "সরানো আছে",
"account.never_active": "Never",
"account.media": "মিডিয়া",
"account.mention": "@{name} কে উল্লেখ করুন",
"account.moved_to": "{name} কে এখানে সরানো হয়েছে:",
"account.mute": "@{name} কে নিঃশব্দ করুন",
"account.mute_notifications": "@{name} র প্রজ্ঞাপন আপনার কাছে নিঃশব্দ করুন",
"account.muted": "নিঃশব্দ",
"account.never_active": "কখনও নয়",
"account.posts": "টুট",
"account.posts_with_replies": "টুট এবং মতামত",
"account.report": "@{name} কে রিপোর্ট করতে",
"account.requested": "অনুমতির অপেক্ষায় আছে। অনুসরণ করার অনুরোধ বাতিল করতে এখানে ক্লিক করুন",
"account.share": "@{name}র পাতা অন্যদের দেখান",
"account.show_reblogs": "@{name}র সমর্থনগুলো দেখন",
"account.unblock": "@{name}র কার্যকলাপ আবার দেখুন",
"account.unblock_domain": "{domain}থেকে আবার দেখুন",
"account.unendorse": "আপনার নিজের পাতায় এটা না দেখাতে",
"account.report": "@{name} কে রিপোর্ট করুন",
"account.requested": "অনুমতির অপেক্ষা। অনুসরণ করার অনুরোধ বাতিল করতে এখানে ক্লিক করুন",
"account.share": "@{name} র প্রোফাইল অন্যদের দেখান",
"account.show_reblogs": "@{name} র সমর্থনগুলো দেখন",
"account.unblock": "@{name} র কার্যকলাপ দেখুন",
"account.unblock_domain": "{domain} কে আবার দেখুন",
"account.unendorse": "আপনার নিজের পাতায় এটা দেখবেন না",
"account.unfollow": "অনুসরণ না করতে",
"account.unmute": "@{name}র কার্যকলাপ আবার দেখুন",
"account.unmute_notifications": "@{name}র প্রজ্ঞাপন দেওয়ার অনুমতি দিন",
"alert.rate_limited.message": "Please retry after {retry_time, time, medium}.",
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "অপ্রত্যাশিত একটি সমস্যা হয়েছে।",
"account.unmute": "@{name} র কার্যকলাপ আবার দেখুন",
"account.unmute_notifications": "@{name} র প্রজ্ঞাপন দেখুন",
"alert.rate_limited.message": "{retry_time, time, medium} -এর পরে আবার প্রচেষ্টা করুন।",
"alert.rate_limited.title": "হার সীমিত",
"alert.unexpected.message": "সমস্যা অপ্রত্যাশিত.",
"alert.unexpected.title": "ওহো!",
"autosuggest_hashtag.per_week": "{count} per week",
"boost_modal.combo": "পরেরবার আপনি {combo} চাপ দিলে এটার শেষে চলে যেতে পারবেন",
"bundle_column_error.body": "এই অংশটি দেখতে যেয়ে কোনো সমস্যা হয়েছে।",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "প্রতি সপ্তাহে {count}",
"boost_modal.combo": "পরেরবার আপনি {combo} টিপলে এটি আর আসবে না",
"bundle_column_error.body": "এই অংশটি দেখতে যেয়ে কোনো সমস্যা হয়েছে।.",
"bundle_column_error.retry": "আবার চেষ্টা করুন",
"bundle_column_error.title": "নেটওয়ার্কের সমস্যা হচ্ছে",
"bundle_column_error.title": "নেটওয়ার্কের সমস্যা",
"bundle_modal_error.close": "বন্ধ করুন",
"bundle_modal_error.message": "এই অংশটি দেখাতে যেয়ে কোনো সমস্যা হয়েছে।",
"bundle_modal_error.message": "এই অংশটি দেখাতে যেয়ে কোনো সমস্যা হয়েছে।.",
"bundle_modal_error.retry": "আবার চেষ্টা করুন",
"column.blocks": "যাদের বন্ধ করে রাখা হয়েছে",
"column.blocks": "যাদের ব্লক করা হয়েছে",
"column.bookmarks": "Bookmarks",
"column.community": "স্থানীয় সময়সারি",
"column.direct": "সরাসরি লেখা",
"column.directory": "Browse profiles",
"column.domain_blocks": "সরিয়ে ফেলা ওয়েবসাইট",
"column.directory": "প্রোফাইল ব্রাউজ করুন",
"column.domain_blocks": "লুকোনো ডোমেনগুলি",
"column.favourites": "পছন্দের গুলো",
"column.follow_requests": "অনুসরণের অনুমতি চেয়েছে যারা",
"column.home": "বাড়ি",
@ -82,28 +85,30 @@
"compose_form.poll.duration": "ভোটগ্রহনের সময়",
"compose_form.poll.option_placeholder": "বিকল্প {number}",
"compose_form.poll.remove_option": "এই বিকল্পটি মুছে ফেলুন",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "টুট",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "এই ছবি বা ভিডিওটি সংবেদনশীল হিসেবে চিহ্নিত করতে",
"compose_form.sensitive.marked": "এই ছবি বা ভিডিওটি সংবেদনশীল হিসেবে চিহ্নিত করা হয়েছে",
"compose_form.sensitive.unmarked": "এই ছবি বা ভিডিওটি সংবেদনশীল হিসেবে চিহ্নিত করা হয়নি",
"compose_form.spoiler.marked": "লেখাটি সাবধানতার পছনে লুকানো আছে",
"compose_form.spoiler.marked": "সতর্কতার পিছনে লেখানটি লুকানো আছে",
"compose_form.spoiler.unmarked": "লেখাটি লুকানো নেই",
"compose_form.spoiler_placeholder": "আপনার লেখা দেখার সাবধানবাণী লিখুন",
"confirmation_modal.cancel": "বাতিল করুন",
"confirmations.block.block_and_report": "বন্ধ করুন এবং রিপোর্ট করুন",
"confirmations.block.confirm": "বন্ধ করুন",
"confirmations.block.message": "আপনি কি নিশ্চিত {name} কে বন্ধ করতে চান ?",
"confirmations.block.block_and_report": "ব্লক করুন এবং রিপোর্ট করুন",
"confirmations.block.confirm": "ব্লক করুন",
"confirmations.block.message": "আপনি কি নিশ্চিত {name} কে ব্লক করতে চান?",
"confirmations.delete.confirm": "মুছে ফেলুন",
"confirmations.delete.message": "আপনি কি নিশ্চিত যে এই লেখাটি মুছে ফেলতে চান ?",
"confirmations.delete_list.confirm": "মুছে ফেলুন",
"confirmations.delete_list.message": "আপনি কি নিশ্চিত যে আপনি এই তালিকাটি স্থায়িভাবে মুছে ফেলতে চান ?",
"confirmations.domain_block.confirm": "এই ওয়েবসাইট থেকে সব সরান",
"confirmations.domain_block.message": "আপনি কি সত্যি সত্যি নিশ্চিত যে {domain} ওয়েবসাইট থেকে সব সরাতে চান ? সাধারণত কিছু লক্ষ্যবস্তন্ধ এবং সরানোযা যথেষ্ট। নিশ্চিত করলে ওই ওয়েবসাইট থেকে কোনোকিছু কোনখানে দেখবেন না। যারা আপনাকে অনুসরণ করে ওই ওয়েবসাইট থেকে তাদেরকেও মুছে ফেলা হবে।",
"confirmations.logout.confirm": "Log out",
"confirmations.logout.message": "Are you sure you want to log out?",
"confirmations.domain_block.confirm": "এই ডোমেন থেকে সব লুকান",
"confirmations.domain_block.message": "আপনি কি সত্যি সত্য নিশ্চিত যে আপনি পুরো {domain}'টি ব্লক করতে চান? বেশিরভাগ ক্ষেত্রে কয়েকটি লক্ষ্যযুক্ত ব্লক বা নীরবতা যথেষ্ট এবং পছন্দসই। আপনি কোনও পাবলিক টাইমলাইন বা আপনার বিজ্ঞপ্তিগুলিতে সেই ডোমেন থেকে সামগ্রী দেখতে পাবেন না। সেই ডোমেন থেকে আপনা অনুসরণকারীদের সরানো হবে।",
"confirmations.logout.confirm": "প্রস্থান",
"confirmations.logout.message": "আপনি লগ আউট করতে চান?",
"confirmations.mute.confirm": "সরিয়ে ফেলুন",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.explanation": "এটি তাদের কাছ থেকে পোস্ট এবং তাদেরকে মেনশন করা পোস্টগুলি হাইড করবে, তবুও তাদেরকে এটি আপনার পোস্ট গুলো দেখতে দিবে ও তারা আপনাকে অনুসরন করতে পারবে।.",
"confirmations.mute.message": "আপনি কি নিশ্চিত {name} সরিয়ে ফেলতে চান ?",
"confirmations.redraft.confirm": "মুছে ফেলুন এবং আবার সম্পাদন করুন",
"confirmations.redraft.message": "আপনি কি নিশ্চিত এটি মুছে ফেলে এবং আবার সম্পাদন করতে চান ? এটাতে যা পছন্দিত, সমর্থন বা মতামত আছে সেগুলো নতুন লেখার সাথে যুক্ত থাকবে না।",
@ -111,14 +116,14 @@
"confirmations.reply.message": "এখন মতামত লিখতে গেলে আপনার এখন যেটা লিখছেন সেটা মুছে যাবে। আপনি নি নিশ্চিত এটা করতে চান ?",
"confirmations.unfollow.confirm": "অনুসরণ করা বাতিল করতে",
"confirmations.unfollow.message": "আপনি কি নিশ্চিত {name} কে আর অনুসরণ করতে চান না ?",
"conversation.delete": "Delete conversation",
"conversation.mark_as_read": "Mark as read",
"conversation.open": "View conversation",
"conversation.with": "With {names}",
"directory.federated": "From known fediverse",
"directory.local": "From {domain} only",
"directory.new_arrivals": "New arrivals",
"directory.recently_active": "Recently active",
"conversation.delete": "কথোপকথন মুছে ফেলুন",
"conversation.mark_as_read": "পঠিত হিসেবে চিহ্নিত করুন",
"conversation.open": "কথপোকথন দেখান",
"conversation.with": "{names} এর সঙ্গে",
"directory.federated": "পরিচিত ফেডিভারসের থেকে",
"directory.local": "শুধু {domain} থেকে",
"directory.new_arrivals": "নতুন আগত",
"directory.recently_active": "সম্প্রতি সক্রিয়",
"embed.instructions": "এই লেখাটি আপনার ওয়েবসাইটে যুক্ত করতে নিচের কোডটি বেবহার করুন।",
"embed.preview": "সেটা দেখতে এরকম হবে:",
"emoji_button.activity": "কার্যকলাপ",
@ -137,25 +142,26 @@
"emoji_button.travel": "ভ্রমণ এবং স্থান",
"empty_column.account_timeline": "এখানে কোনো টুট নেই!",
"empty_column.account_unavailable": "নিজস্ব পাতা নেই",
"empty_column.blocks": "আপনি কোনো ব্যবহারকারীদের বন্ধ করেন নি।",
"empty_column.blocks": "আপনি কোনো ব্যবহারকারীদের ব্লক করেন নি।",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "স্থানীয় সময়রেখাতে কিছু নেই। প্রকাশ্যভাবে কিছু লিখে লেখালেখির উদ্বোধন করে ফেলুন!",
"empty_column.direct": "আপনার কাছে সরাসরি পাঠানো কোনো লেখা নেই। যদি কেও পাঠায়, সেটা এখানে দেখা যাবে।",
"empty_column.domain_blocks": "এখন কোনো সরানো ওয়েবসাইট নেই।",
"empty_column.domain_blocks": "এখন কোনও লুকানো ডোমেন নেই।",
"empty_column.favourited_statuses": "আপনার পছন্দের কোনো টুট এখনো নেই। আপনি কোনো লেখা পছন্দের হিসেবে চিহ্নিত করলে এখানে পাওয়া যাবে।",
"empty_column.favourites": "কেও এখনো এটাকে পছন্দের টুট হিসেবে চিহ্নিত করেনি। যদি করে, তখন তাদের এখানে পাওয়া যাবে।",
"empty_column.follow_requests": "আপনার এখনো কোনো অনুসরণের আবেদন পাঠানো নেই। যদি পাঠায়, এখানে পাওয়া যাবে।",
"empty_column.hashtag": "এই হেসটাগে এখনো কিছু নেই।",
"empty_column.home": "আপনার বাড়ির সময়রেখা এখনো খালি! {public}এ ঘুরে আসুন অথবা অনুসন্ধান বেবহার করে শুরু করতে পারেন এবং অন্য ব্যবহারকারীদের সাথে সাক্ষাৎ করতে পারেন।",
"empty_column.home": "আপনার বাড়ির সময়রেখা এখনো খালি! {public} এ ঘুরে আসুন অথবা অনুসন্ধান বেবহার করে শুরু করতে পারেন এবং অন্য ব্যবহারকারীদের সাথে সাক্ষাৎ করতে পারেন।",
"empty_column.home.public_timeline": "প্রকাশ্য সময়রেখা",
"empty_column.list": "এই তালিকাতে এখনো কিছু নেই. যখন এই তালিকায় থাকা ব্যবহারকারী নতুন কিছু লিখবে, সেগুলো এখানে পাওয়া যাবে।",
"empty_column.lists": "আপনার এখনো কোনো তালিকা তৈরী নেই। যদি বা যখন তৈরী করেন, সেগুলো এখানে পাওয়া যাবে।",
"empty_column.mutes": "আপনি এখনো কোনো ব্যবহারকারীকে সরাননি।",
"empty_column.mutes": "আপনি এখনো কোনো ব্যবহারকারীকে নিঃশব্দ করেননি।",
"empty_column.notifications": "আপনার এখনো কোনো প্রজ্ঞাপন নেই। কথোপকথন শুরু করতে, অন্যদের সাথে মেলামেশা করতে পারেন।",
"empty_column.public": "এখানে এখনো কিছু নেই! প্রকাশ্য ভাবে কিছু লিখুন বা অন্য সার্ভার থেকে কাওকে অনুসরণ করে এই জায়গা ভরে ফেলুন",
"error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
"error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.report_issue": "Report issue",
"error.unexpected_crash.explanation": "আমাদের কোড বা ব্রাউজারের সামঞ্জস্য ইস্যুতে একটি বাগের কারণে এই পৃষ্ঠাটি সঠিকভাবে প্রদর্শিত করা যায় নি।",
"error.unexpected_crash.next_steps": "পাতাটি রিফ্রেশ করে চেষ্টা করুন। তবুও যদি না হয়, তবে আপনি অন্য একটি ব্রাউজার অথবা আপনার ডিভাইসের জন্যে এপের মাধ্যমে মাস্টডন ব্যাবহার করতে পারবেন।.",
"errors.unexpected_crash.copy_stacktrace": "স্টেকট্রেস ক্লিপবোর্ডে কপি করুন",
"errors.unexpected_crash.report_issue": "সমস্যার প্রতিবেদন করুন",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
"federation.federated.short": "Federated",
@ -183,9 +189,11 @@
"home.column_settings.basic": "সাধারণ",
"home.column_settings.show_reblogs": "সমর্থনগুলো দেখান",
"home.column_settings.show_replies": "মতামত দেখান",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# ঘটা} other {# ঘটা}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
"intervals.full.minutes": "{number, plural, one {# মিনিট} other {# মিনিট}}",
"introduction.federation.action": "পরবর্তী",
"introduction.federation.federated.headline": "যুক্তবিশ্ব",
"introduction.federation.federated.text": "অন্যান্য যুক্তবিশ্বের সার্ভারের লেখাগুলি যুক্তবিশ্বের সময়রেখাতে আসবে ।",
@ -204,7 +212,7 @@
"introduction.welcome.headline": "প্রথম ধাপ",
"introduction.welcome.text": "যুক্তবিশ্বে স্বাগতম! কিছুক্ষনের মধ্যেই আপনি আপনার লেখা বিভিন্ন সার্ভারে সম্প্রচার করতে পারবেন। কিন্তু মনে রাখবে যে এটা একটা বিশেষ সার্ভার, {domain} কারণ এখানে আপনার নিজেস্ব পাতা রাখা হচ্ছে।",
"keyboard_shortcuts.back": "পেছনে যেতে",
"keyboard_shortcuts.blocked": "বন্ধ করা ব্যবহারকারীদের তালিকা দেখতে",
"keyboard_shortcuts.blocked": "ব্লক করা ব্যবহারকারীদের তালিকা খুলতে",
"keyboard_shortcuts.boost": "সমর্থন করতে",
"keyboard_shortcuts.column": "কোনো কলামএ কোনো লেখা ফোকাস করতে",
"keyboard_shortcuts.compose": "লেখা সম্পদনার জায়গায় ফোকাস করতে",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "বন্ধ করা ব্যবহারকারীদের তালিকা খুলতে",
"keyboard_shortcuts.my_profile": "আপনার নিজের পাতা দেখতে",
"keyboard_shortcuts.notifications": "প্রজ্ঞাপনের কলাম খুলতে",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "পিন দেওয়া টুটের তালিকা খুলতে",
"keyboard_shortcuts.profile": "লেখকের পাতা দেখতে",
"keyboard_shortcuts.reply": "মতামত দিতে",
@ -248,7 +257,7 @@
"lists.new.title_placeholder": "তালিকার নতুন শিরোনাম দিতে",
"lists.search": "যাদের অনুসরণ করেন তাদের ভেতরে খুঁজুন",
"lists.subheading": "আপনার তালিকা",
"load_pending": "{count, plural, one {# new item} other {# new items}}",
"load_pending": "{count, plural, one {# নতুন জিনিস} other {# নতুন জিনিস}}",
"loading_indicator.label": "আসছে...",
"media_gallery.toggle_visible": "দৃশ্যতার অবস্থা বদলান",
"missing_indicator.label": "খুঁজে পাওয়া যায়নি",
@ -256,21 +265,22 @@
"mute_modal.hide_notifications": "এই ব্যবহারকারীর প্রজ্ঞাপন বন্ধ করবেন ?",
"navigation_bar.apps": "মোবাইলের আপ্প",
"navigation_bar.blocks": "বন্ধ করা ব্যবহারকারী",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "স্থানীয় সময়রেখা",
"navigation_bar.compose": "নতুন টুট লিখুন",
"navigation_bar.direct": "সরাসরি লেখাগুলি",
"navigation_bar.discover": "ঘুরে দেখুন",
"navigation_bar.domain_blocks": "বন্ধ করা ওয়েবসাইট",
"navigation_bar.domain_blocks": "লুকানো ডোমেনগুলি",
"navigation_bar.edit_profile": "নিজের পাতা সম্পাদনা করতে",
"navigation_bar.favourites": "পছন্দের",
"navigation_bar.filters": "বন্ধ করা শব্দ",
"navigation_bar.follow_requests": "অনুসরণের অনুরোধগুলি",
"navigation_bar.follows_and_followers": "যাদেরকে অনুসরণ করেন এবং যারা তাকে অনুসরণ করে",
"navigation_bar.follows_and_followers": "অনুসরণ এবং অনুসরণকারী",
"navigation_bar.info": "এই সার্ভার সম্পর্কে",
"navigation_bar.keyboard_shortcuts": "হটকীগুলি",
"navigation_bar.lists": "তালিকাগুলো",
"navigation_bar.logout": "বাইরে যান",
"navigation_bar.mutes": "যেসব বেভহারকারীদের কার্যক্রম বন্ধ করা আছে",
"navigation_bar.mutes": "যদের কার্যক্রম দেখা বন্ধ আছে",
"navigation_bar.personal": "নিজস্ব",
"navigation_bar.pins": "পিন দেওয়া টুট",
"navigation_bar.preferences": "পছন্দসমূহ",
@ -278,7 +288,9 @@
"navigation_bar.security": "নিরাপত্তা",
"notification.favourite": "{name} আপনার কার্যক্রম পছন্দ করেছেন",
"notification.follow": "{name} আপনাকে অনুসরণ করেছেন",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} আপনাকে উল্লেখ করেছেন",
"notification.own_poll": "আপনার পোল শেষ হয়েছে",
"notification.poll": "আপনি ভোট দিয়েছিলেন এমন এক নির্বাচনের ভোটের সময় শেষ হয়েছে",
"notification.reblog": "{name} আপনার কার্যক্রমে সমর্থন দেখিয়েছেন",
"notifications.clear": "প্রজ্ঞাপনগুলো মুছে ফেলতে",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "সংক্ষিপ্ত ছাঁকনি অংশ",
"notifications.column_settings.filter_bar.show": "দেখানো",
"notifications.column_settings.follow": "নতুন অনুসরণকারীরা:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "প্রজ্ঞাপনগুলো:",
"notifications.column_settings.poll": "নির্বাচনের ফলাফল:",
"notifications.column_settings.push": "পুশ প্রজ্ঞাপনগুলি",
@ -304,10 +317,10 @@
"notifications.group": "{count} প্রজ্ঞাপন",
"poll.closed": "বন্ধ",
"poll.refresh": "বদলেছে কিনা দেখতে",
"poll.total_people": "{count, plural, one {# person} other {# people}}",
"poll.total_people": "{count, plural, one {# ব্যক্তি} other {# ব্যক্তি}}",
"poll.total_votes": "{count, plural, one {# ভোট} other {# ভোট}}",
"poll.vote": "ভোট",
"poll.voted": "You voted for this answer",
"poll.voted": "আপনি এই উত্তরের পক্ষে ভোট দিয়েছেন",
"poll_button.add_poll": "একটা নির্বাচন যোগ করতে",
"poll_button.remove_poll": "নির্বাচন বাদ দিতে",
"privacy.change": "লেখার গোপনীয়তা অবস্থা ঠিক করতে",
@ -319,14 +332,15 @@
"privacy.public.short": "সর্বজনীন প্রকাশ্য",
"privacy.unlisted.long": "সর্বজনীন প্রকাশ্য সময়রেখাতে না দেখাতে",
"privacy.unlisted.short": "প্রকাশ্য নয়",
"refresh": "Refresh",
"refresh": "সতেজ করা",
"regeneration_indicator.label": "আসছে…",
"regeneration_indicator.sublabel": "আপনার বাড়ির-সময়রেখা প্রস্তূত করা হচ্ছে!",
"relative_time.days": "{number} দিন",
"relative_time.hours": "{number} ঘন্টা",
"relative_time.just_now": "এখন",
"relative_time.minutes": "{number}ম",
"relative_time.minutes": "{number}মিঃ",
"relative_time.seconds": "{number} সেকেন্ড",
"relative_time.today": "today",
"reply_indicator.cancel": "বাতিল করতে",
"report.forward": "এটা আরো পাঠান {target} তে",
"report.forward_hint": "এই নিবন্ধনটি অন্য একটি সার্ভারে। অপ্রকাশিতনামাভাবে রিপোর্টের কপি সেখানেও কি পাঠাতে চান ?",
@ -334,7 +348,7 @@
"report.placeholder": "অন্য কোনো মন্তব্য",
"report.submit": "জমা দিন",
"report.target": "{target} রিপোর্ট করুন",
"search.placeholder": "খুঁজতে",
"search.placeholder": "অনুসন্ধান",
"search_popout.search_format": "বিস্তারিতভাবে খোঁজার পদ্ধতি",
"search_popout.tips.full_text": "সাধারণ লেখা দিয়ে খুঁজলে বের হবে সেরকম আপনার লেখা, পছন্দের লেখা, সমর্থন করা লেখা, আপনাকে উল্লেখকরা কোনো লেখা, যা খুঁজছেন সেরকম কোনো ব্যবহারকারীর নাম বা কোনো হ্যাশট্যাগগুলো।",
"search_popout.tips.hashtag": "হ্যাশট্যাগ",
@ -344,11 +358,12 @@
"search_results.accounts": "মানুষ",
"search_results.hashtags": "হ্যাশট্যাগগুলি",
"search_results.statuses": "টুট",
"search_results.statuses_fts_disabled": "Searching toots by their content is not enabled on this Mastodon server.",
"search_results.statuses_fts_disabled": "তাদের সামগ্রী দ্বারা টুটগুলি অনুসন্ধান এই মস্তোডন সার্ভারে সক্ষম নয়।",
"search_results.total": "{count, number} {count, plural, one {ফলাফল} other {ফলাফল}}",
"status.admin_account": "@{name} র জন্য পরিচালনার ইন্টারফেসে ঢুকুন",
"status.admin_status": "যায় লেখাটি পরিচালনার ইন্টারফেসে খুলুন",
"status.block": "@{name}কে বন্ধ করুন",
"status.block": "@{name} কে ব্লক করুন",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "সমর্থন বাতিল করতে",
"status.cannot_reblog": "এটিতে সমর্থন দেওয়া যাবেনা",
"status.copy": "লেখাটির লিংক কপি করতে",
@ -359,8 +374,7 @@
"status.favourite": "পছন্দের করতে",
"status.filtered": "ছাঁকনিদিত",
"status.load_more": "আরো দেখুন",
"status.local_only": "This post is only visible by other users of your instance",
"status.media_hidden": "ছবি বা ভিডিও পেছনে",
"status.media_hidden": "মিডিয়া লুকানো আছে",
"status.mention": "@{name}কে উল্লেখ করতে",
"status.more": "আরো",
"status.mute": "@{name}র কার্যক্রম সরিয়ে ফেলতে",
@ -374,6 +388,7 @@
"status.reblogged_by": "{name} সমর্থন দিয়েছে",
"status.reblogs.empty": "এখনো কেও এটাতে সমর্থন দেয়নি। যখন কেও দেয়, সেটা তখন এখানে দেখা যাবে।",
"status.redraft": "মুছে আবার নতুন করে লিখতে",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "মতামত জানাতে",
"status.replyAll": "লেখাযুক্ত সবার কাছে মতামত জানাতে",
"status.report": "@{name} কে রিপোর্ট করতে",
@ -384,7 +399,7 @@
"status.show_more": "আরো দেখাতে",
"status.show_more_all": "সবগুলোতে আরো দেখতে",
"status.show_thread": "আলোচনা দেখতে",
"status.uncached_media_warning": "Not available",
"status.uncached_media_warning": "পাওয়া যাচ্ছে না",
"status.unmute_conversation": "আলোচনার প্রজ্ঞাপন চালু করতে",
"status.unpin": "নিজের পাতা থেকে পিন করে রাখাটির পিন খুলতে",
"suggestions.dismiss": "সাহায্যের পরামর্শগুলো সরাতে",
@ -393,31 +408,34 @@
"tabs_bar.home": "বাড়ি",
"tabs_bar.local_timeline": "স্থানীয়",
"tabs_bar.notifications": "প্রজ্ঞাপনগুলো",
"tabs_bar.search": "খুঁজতে",
"tabs_bar.search": "অনুসন্ধান",
"time_remaining.days": "{number, plural, one {# day} other {# days}} বাকি আছে",
"time_remaining.hours": "{number, plural, one {# hour} other {# hours}} বাকি আছে",
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} বাকি আছে",
"time_remaining.minutes": "{number, plural, one {# মিনিট} other {# মিনিট}} বাকি আছে",
"time_remaining.moments": "সময় বাকি আছে",
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} বাকি আছে",
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} কথা বলছে",
"trends.trending_now": "Trending now",
"trends.trending_now": "বর্তমানে জনপ্রিয়",
"ui.beforeunload": "যে পর্যন্ত এটা লেখা হয়েছে, মাস্টাডন থেকে চলে গেলে এটা মুছে যাবে।",
"upload_area.title": "টেনে এখানে ছেড়ে দিলে এখানে যুক্ত করা যাবে",
"upload_button.label": "ছবি বা ভিডিও যুক্ত করতে (এসব ধরণের: JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "যা যুক্ত করতে চাচ্ছেন সেটি বেশি বড়, এখানকার সর্বাধিকের মেমোরির উপরে চলে গেছে।",
"upload_error.poll": "নির্বাচনক্ষেত্রে কোনো ফাইল যুক্ত করা যাবেনা।",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "যারা দেখতে পায়না তাদের জন্য এটা বর্ণনা করতে",
"upload_form.edit": "Edit",
"upload_form.edit": "সম্পাদন",
"upload_form.undo": "মুছে ফেলতে",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "চিত্র বিশ্লেষণ করা হচ্ছে…",
"upload_modal.apply": "প্রয়োগ করুন",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
"upload_modal.detect_text": "Detect text from picture",
"upload_modal.edit_media": "Edit media",
"upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
"upload_modal.preview_label": "Preview ({ratio})",
"upload_modal.detect_text": "ছবি থেকে পাঠ্য সনাক্ত করুন",
"upload_modal.edit_media": "মিডিয়া সম্পাদনা করুন",
"upload_modal.hint": "একটি দৃশ্যমান পয়েন্ট নির্বাচন করুন ক্লিক অথবা টানার মাধ্যমে যেটি সবময় সব থাম্বনেলে দেখা যাবে।",
"upload_modal.preview_label": "পূর্বরূপ({ratio})",
"upload_progress.label": "যুক্ত করতে পাঠানো হচ্ছে...",
"video.close": "ভিডিওটি বন্ধ করতে",
"video.download": "ফাইলটি ডাউনলোড করুন",
"video.exit_fullscreen": "পূর্ণ পর্দা থেকে বাইরে বের হতে",
"video.expand": "ভিডিওটি বড়ো করতে",
"video.fullscreen": "পূর্ণ পর্দা করতে",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Ouzhpenn pe lemel ag ar listennadoù",
"account.badges.bot": "Robot",
"account.badges.group": "Strollad",
"account.block": "Stankañ @{name}",
"account.block_domain": "Kuzh kement tra a {domain}",
"account.blocked": "Stanket",
@ -13,7 +14,7 @@
"account.followers": "Heilour·ezed·ion",
"account.followers.empty": "Den na heul an implijour-mañ c'hoazh.",
"account.follows": "Koumanantoù",
"account.follows.empty": "This user doesn't follow anyone yet.",
"account.follows.empty": "An implijer-mañ na heul ket den ebet.",
"account.follows_you": "Ho heul",
"account.hide_reblogs": "Kuzh toudoù skignet gant @{name}",
"account.last_status": "Oberiantiz zivezhañ",
@ -29,21 +30,22 @@
"account.posts": "Toudoù",
"account.posts_with_replies": "Toudoù ha respontoù",
"account.report": "Disklêriañ @{name}",
"account.requested": "Awaiting approval",
"account.requested": "É c'hortoz bout aprouet. Clikit da nullañ ar pedad heuliañ",
"account.share": "Skignañ profil @{name}",
"account.show_reblogs": "Diskouez toudoù a @{name}",
"account.unblock": "Distankañ @{name}",
"account.unblock_domain": "Diguzh {domain}",
"account.unendorse": "Don't feature on profile",
"account.unendorse": "Paouez da lakaat war-wel war ar profil",
"account.unfollow": "Diheuliañ",
"account.unmute": "Diguzhat @{name}",
"account.unmute_notifications": "Diguzhat kemennoù a @{name}",
"alert.rate_limited.message": "Please retry after {retry_time, time, medium}.",
"alert.rate_limited.message": "Klaskit en-dro a-benn {retry_time, time, medium}.",
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "Ur fazi dic'hortozet zo degouezhet.",
"alert.unexpected.title": "C'hem !",
"announcement.announcement": "Kemenn",
"autosuggest_hashtag.per_week": "{count} bep sizhun",
"boost_modal.combo": "You can press {combo} to skip this next time",
"boost_modal.combo": "Ar wezh kentañ e c'halliot gwaskañ war {combo} evit tremen hebiou",
"bundle_column_error.body": "Something went wrong while loading this component.",
"bundle_column_error.retry": "Klask endro",
"bundle_column_error.title": "Fazi rouedad",
@ -51,65 +53,68 @@
"bundle_modal_error.message": "Something went wrong while loading this component.",
"bundle_modal_error.retry": "Klask endro",
"column.blocks": "Implijour·ezed·ion stanket",
"column.bookmarks": "Sinedoù",
"column.community": "Red-amzer lec'hel",
"column.direct": "Kemennadoù prevez",
"column.directory": "Mont a-dreuz ar profiloù",
"column.domain_blocks": "Domani kuzhet",
"column.favourites": "Favourites",
"column.follow_requests": "Follow requests",
"column.home": "Home",
"column.lists": "Lists",
"column.mutes": "Muted users",
"column.notifications": "Notifications",
"column.pins": "Pinned toot",
"column.public": "Federated timeline",
"column_back_button.label": "Back",
"column_header.hide_settings": "Hide settings",
"column.favourites": "Ar re vuiañ-karet",
"column.follow_requests": "Pedadoù heuliañ",
"column.home": "Degemer",
"column.lists": "Listennoù",
"column.mutes": "Implijer·ion·ezed kuzhet",
"column.notifications": "Kemennoù",
"column.pins": "Toudoù spilhennet",
"column.public": "Red-amzer kevreet",
"column_back_button.label": "Distro",
"column_header.hide_settings": "Kuzhat an arventennoù",
"column_header.moveLeft_settings": "Move column to the left",
"column_header.moveRight_settings": "Move column to the right",
"column_header.pin": "Pin",
"column_header.show_settings": "Show settings",
"column_header.unpin": "Unpin",
"column_subheading.settings": "Settings",
"community.column_settings.media_only": "Media only",
"compose_form.direct_message_warning": "This toot will only be sent to all the mentioned users.",
"compose_form.direct_message_warning_learn_more": "Learn more",
"column_header.pin": "Spilhennañ",
"column_header.show_settings": "Diskouez an arventennoù",
"column_header.unpin": "Dispilhennañ",
"column_subheading.settings": "Arventennoù",
"community.column_settings.media_only": "Nemet Mediaoù",
"compose_form.direct_message_warning": "An toud-mañ a vo kaset nemet d'an implijer·ion·ezed meneget.",
"compose_form.direct_message_warning_learn_more": "Gouiet hiroc'h",
"compose_form.hashtag_warning": "This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.",
"compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.",
"compose_form.lock_disclaimer.lock": "locked",
"compose_form.placeholder": "What is on your mind?",
"compose_form.poll.add_option": "Add a choice",
"compose_form.lock_disclaimer.lock": "prennet",
"compose_form.placeholder": "Petra eh oc'h é soñjal a-barzh ?",
"compose_form.poll.add_option": "Ouzhpenniñ un dibab",
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.publish": "Toot",
"compose_form.publish_loud": "{publish}!",
"compose_form.poll.option_placeholder": "Dibab {number}",
"compose_form.poll.remove_option": "Lemel an dibab-mañ",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Toudañ",
"compose_form.publish_loud": "{publish} !",
"compose_form.sensitive.hide": "Mark media as sensitive",
"compose_form.sensitive.marked": "Media is marked as sensitive",
"compose_form.sensitive.unmarked": "Media is not marked as sensitive",
"compose_form.spoiler.marked": "Text is hidden behind warning",
"compose_form.spoiler.unmarked": "Text is not hidden",
"compose_form.spoiler.unmarked": "N'eo ket kuzhet an destenn",
"compose_form.spoiler_placeholder": "Write your warning here",
"confirmation_modal.cancel": "Cancel",
"confirmation_modal.cancel": "Nullañ",
"confirmations.block.block_and_report": "Block & Report",
"confirmations.block.confirm": "Block",
"confirmations.block.message": "Are you sure you want to block {name}?",
"confirmations.delete.confirm": "Delete",
"confirmations.delete.confirm": "Dilemel",
"confirmations.delete.message": "Are you sure you want to delete this status?",
"confirmations.delete_list.confirm": "Delete",
"confirmations.delete_list.message": "Are you sure you want to permanently delete this list?",
"confirmations.domain_block.confirm": "Hide entire domain",
"confirmations.delete_list.confirm": "Dilemel",
"confirmations.delete_list.message": "Ha sur eo hoc'h eus c'hoant da zilemel ar roll-mañ da vat ?",
"confirmations.domain_block.confirm": "Kuzhat an domani a-bezh",
"confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.",
"confirmations.logout.confirm": "Log out",
"confirmations.logout.confirm": "Digevreañ",
"confirmations.logout.message": "Are you sure you want to log out?",
"confirmations.mute.confirm": "Mute",
"confirmations.mute.confirm": "Kuzhat",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.message": "Are you sure you want to mute {name}?",
"confirmations.redraft.confirm": "Delete & redraft",
"confirmations.mute.message": "Ha sur oc'h e fell deoc'h kuzhaat {name} ?",
"confirmations.redraft.confirm": "Diverkañ ha skrivañ en-dro",
"confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.",
"confirmations.reply.confirm": "Reply",
"confirmations.reply.confirm": "Respont",
"confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"confirmations.unfollow.confirm": "Unfollow",
"confirmations.unfollow.confirm": "Diheuliañ",
"confirmations.unfollow.message": "Are you sure you want to unfollow {name}?",
"conversation.delete": "Delete conversation",
"conversation.mark_as_read": "Mark as read",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "No toots here!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "You haven't blocked any users yet.",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
"empty_column.domain_blocks": "There are no hidden domains yet.",
@ -178,6 +184,8 @@
"home.column_settings.basic": "Basic",
"home.column_settings.show_reblogs": "Show boosts",
"home.column_settings.show_replies": "Show replies",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
@ -219,6 +227,7 @@
"keyboard_shortcuts.muted": "to open muted users list",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.notifications": "to open notifications column",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "to open pinned toots list",
"keyboard_shortcuts.profile": "to open author's profile",
"keyboard_shortcuts.reply": "to reply",
@ -251,6 +260,7 @@
"mute_modal.hide_notifications": "Hide notifications from this user?",
"navigation_bar.apps": "Mobile apps",
"navigation_bar.blocks": "Blocked users",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "Local timeline",
"navigation_bar.compose": "Compose new toot",
"navigation_bar.direct": "Direct messages",
@ -273,7 +283,9 @@
"navigation_bar.security": "Security",
"notification.favourite": "{name} favourited your status",
"notification.follow": "{name} followed you",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} mentioned you",
"notification.own_poll": "Your poll has ended",
"notification.poll": "A poll you have voted in has ended",
"notification.reblog": "{name} boosted your status",
"notifications.clear": "Clear notifications",
@ -284,6 +296,7 @@
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.follow": "New followers:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "Mentions:",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.push": "Push notifications",
@ -322,6 +335,7 @@
"relative_time.just_now": "now",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "today",
"reply_indicator.cancel": "Cancel",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
@ -344,6 +358,7 @@
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Block @{name}",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "Unboost",
"status.cannot_reblog": "This post cannot be boosted",
"status.copy": "Copy link to status",
@ -368,6 +383,7 @@
"status.reblogged_by": "{name} boosted",
"status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "Reply",
"status.replyAll": "Reply to thread",
"status.report": "Report @{name}",
@ -400,9 +416,11 @@
"upload_button.label": "Add media ({formats})",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Describe for the visually impaired",
"upload_form.edit": "Edit",
"upload_form.undo": "Delete",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
@ -412,6 +430,7 @@
"upload_modal.preview_label": "Preview ({ratio})",
"upload_progress.label": "Uploading…",
"video.close": "Close video",
"video.download": "Download file",
"video.exit_fullscreen": "Exit full screen",
"video.expand": "Expand video",
"video.fullscreen": "Full screen",

View File

@ -1,14 +1,15 @@
{
"account.add_or_remove_from_list": "Afegir o Treure de les llistes",
"account.badges.bot": "Bot",
"account.badges.group": "Grup",
"account.block": "Bloqueja @{name}",
"account.block_domain": "Amaga-ho tot de {domain}",
"account.blocked": "Bloquejat",
"account.cancel_follow_request": "Anul·la la sol·licitud de seguiment",
"account.direct": "Missatge directe @{name}",
"account.domain_blocked": "Domini ocult",
"account.edit_profile": "Editar el perfil",
"account.endorse": "Recomanar en el teu perfil",
"account.edit_profile": "Edita el perfil",
"account.endorse": "Recomana en el teu perfil",
"account.follow": "Segueix",
"account.followers": "Seguidors",
"account.followers.empty": "Encara ningú no segueix aquest usuari.",
@ -26,15 +27,15 @@
"account.mute_notifications": "Notificacions desactivades de @{name}",
"account.muted": "Silenciat",
"account.never_active": "Mai",
"account.posts": "Toots",
"account.posts_with_replies": "Toots i respostes",
"account.report": "Informe @{name}",
"account.posts": "Tuts",
"account.posts_with_replies": "Tuts i respostes",
"account.report": "Informar sobre @{name}",
"account.requested": "Esperant aprovació. Clic per a cancel·lar la petició de seguiment",
"account.share": "Comparteix el perfil de @{name}",
"account.show_reblogs": "Mostra els impulsos de @{name}",
"account.unblock": "Desbloca @{name}",
"account.unblock": "Desbloqueja @{name}",
"account.unblock_domain": "Mostra {domain}",
"account.unendorse": "No es mostren al perfil",
"account.unendorse": "No recomanar en el perfil",
"account.unfollow": "Deixa de seguir",
"account.unmute": "Treure silenci de @{name}",
"account.unmute_notifications": "Activar notificacions de @{name}",
@ -42,8 +43,9 @@
"alert.rate_limited.title": "Límit de freqüència",
"alert.unexpected.message": "S'ha produït un error inesperat.",
"alert.unexpected.title": "Vaja!",
"announcement.announcement": "Anunci",
"autosuggest_hashtag.per_week": "{count} per setmana",
"boost_modal.combo": "Pots premer {combo} per saltar-te això el proper cop",
"boost_modal.combo": "Pots prémer {combo} per saltar-te això el proper cop",
"bundle_column_error.body": "S'ha produït un error en carregar aquest component.",
"bundle_column_error.retry": "Torna-ho a provar",
"bundle_column_error.title": "Error de connexió",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "S'ha produït un error en carregar aquest component.",
"bundle_modal_error.retry": "Torna-ho a provar",
"column.blocks": "Usuaris bloquejats",
"column.bookmarks": "Marcadors",
"column.community": "Línia de temps local",
"column.direct": "Missatges directes",
"column.directory": "Navega els perfils",
@ -61,7 +64,7 @@
"column.lists": "Llistes",
"column.mutes": "Usuaris silenciats",
"column.notifications": "Notificacions",
"column.pins": "Toots fixats",
"column.pins": "Tuts fixats",
"column.public": "Línia de temps federada",
"column_back_button.label": "Enrere",
"column_header.hide_settings": "Amaga la configuració",
@ -72,9 +75,9 @@
"column_header.unpin": "No fixis",
"column_subheading.settings": "Configuració",
"community.column_settings.media_only": "Només multimèdia",
"compose_form.direct_message_warning": "Aquest toot només serà enviat als usuaris esmentats.",
"compose_form.direct_message_warning": "Aquest tut només serà enviat als usuaris esmentats.",
"compose_form.direct_message_warning_learn_more": "Aprèn més",
"compose_form.hashtag_warning": "Aquest toot no es mostrarà en cap etiqueta ja que no està llistat. Només els toots públics poden ser cercats per etiqueta.",
"compose_form.hashtag_warning": "Aquesta tut no es mostrarà en cap etiqueta ja que no està llistat. Només els tuts públics poden ser cercats per etiqueta.",
"compose_form.lock_disclaimer": "El teu compte no està bloquejat {locked}. Tothom pot seguir-te i veure els teus missatges a seguidors.",
"compose_form.lock_disclaimer.lock": "bloquejat",
"compose_form.placeholder": "En què penses?",
@ -82,7 +85,9 @@
"compose_form.poll.duration": "Durada de l'enquesta",
"compose_form.poll.option_placeholder": "Opció {number}",
"compose_form.poll.remove_option": "Elimina aquesta opció",
"compose_form.publish": "Toot",
"compose_form.poll.switch_to_multiple": "Canvia lenquesta per a permetre diverses opcions",
"compose_form.poll.switch_to_single": "Canvia lenquesta per a permetre una única opció",
"compose_form.publish": "Tut",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Marcar mèdia com a sensible",
"compose_form.sensitive.marked": "Mèdia marcat com a sensible",
@ -95,18 +100,18 @@
"confirmations.block.confirm": "Bloqueja",
"confirmations.block.message": "Estàs segur que vols bloquejar a {name}?",
"confirmations.delete.confirm": "Suprimeix",
"confirmations.delete.message": "Estàs segur que vols suprimir aquest toot?",
"confirmations.delete.message": "Estàs segur que vols suprimir aquest tut?",
"confirmations.delete_list.confirm": "Suprimeix",
"confirmations.delete_list.message": "Estàs segur que vols suprimir permanentment aquesta llista?",
"confirmations.domain_block.confirm": "Amaga tot el domini",
"confirmations.domain_block.message": "Estàs segur, realment segur que vols bloquejar totalment {domain}? En la majoria dels casos bloquejar o silenciar uns pocs objectius és suficient i preferible. No veuràs contingut daquest domini en cap de les línies públiques ni en les notificacions. Els teus seguidors daquest domini seran eliminats.",
"confirmations.domain_block.message": "Estàs segur, realment segur que vols bloquejar totalment {domain}? En la majoria dels casos bloquejar o silenciar uns pocs objectius és suficient i preferible. No veuràs contingut daquest domini en cap de les línies de temps ni en les notificacions. Els teus seguidors daquest domini seran eliminats.",
"confirmations.logout.confirm": "Tancar sessió",
"confirmations.logout.message": "Segur que vols tancar la sessió?",
"confirmations.mute.confirm": "Silencia",
"confirmations.mute.explanation": "Això amagarà les seves publicacions i les que els mencionen però encara els permetrà veure les teves i seguir-te.",
"confirmations.mute.message": "Estàs segur que vols silenciar {name}?",
"confirmations.redraft.confirm": "Esborrar i refer",
"confirmations.redraft.message": "Estàs segur que vols esborrar aquest toot i tornar a redactar-lo? Perderàs totes els impulsos i favorits, i les respostes al toot original es quedaran orfes.",
"confirmations.redraft.message": "Estàs segur que vols esborrar aquest tut i tornar a redactar-lo? Perdràs tots els impulsos i favorits, i les respostes al tut original es quedaran orfes.",
"confirmations.reply.confirm": "Respon",
"confirmations.reply.message": "Responen ara es sobreescriurà el missatge que estàs editant. Estàs segur que vols continuar?",
"confirmations.unfollow.confirm": "Deixa de seguir",
@ -119,8 +124,8 @@
"directory.local": "Només de {domain}",
"directory.new_arrivals": "Arribades noves",
"directory.recently_active": "Recentment actius",
"embed.instructions": "Incrusta aquest toot al lloc web copiant el codi a continuació.",
"embed.preview": "Aquí tenim quin aspecte tindrá:",
"embed.instructions": "Incrusta aquest tut al lloc web copiant el codi a continuació.",
"embed.preview": "Aquí tenim quin aspecte tindrà:",
"emoji_button.activity": "Activitat",
"emoji_button.custom": "Personalitzat",
"emoji_button.flags": "Banderes",
@ -135,25 +140,26 @@
"emoji_button.search_results": "Resultats de la cerca",
"emoji_button.symbols": "Símbols",
"emoji_button.travel": "Viatges i Llocs",
"empty_column.account_timeline": "No hi ha toots aquí!",
"empty_column.account_timeline": "No hi ha tuts aquí!",
"empty_column.account_unavailable": "Perfil no disponible",
"empty_column.blocks": "Encara no has bloquejat cap usuari.",
"empty_column.bookmarked_statuses": "Encara no tens marcat cap tut. Quan marquis un apareixerà aquí.",
"empty_column.community": "La línia de temps local és buida. Escriu alguna cosa públicament per a fer rodar la pilota!",
"empty_column.direct": "Encara no tens missatges directes. Quan enviïs o rebis un, es mostrarà aquí.",
"empty_column.domain_blocks": "Encara no hi ha dominis ocults.",
"empty_column.favourited_statuses": "Encara no tens cap toot favorit. Quan en tinguis, apareixerà aquí.",
"empty_column.favourites": "Encara ningú ha marcat aquest toot com a favorit. Quan algú ho faci, apareixera aquí.",
"empty_column.follow_requests": "Encara no teniu cap petició de seguiment. Quan rebis una, apareixerà aquí.",
"empty_column.favourited_statuses": "Encara no has marcat com a favorit cap tut. Quan en facis, apareixerà aquí.",
"empty_column.favourites": "Ningú no ha marcat aquest tut com a preferit encara. Quan algú ho faci, apareixerà aquí.",
"empty_column.follow_requests": "Encara no tens cap petició de seguiment. Quan rebis una, apareixerà aquí.",
"empty_column.hashtag": "Encara no hi ha res en aquesta etiqueta.",
"empty_column.home": "Encara no segueixes ningú. Visita {public} o fes cerca per començar i conèixer altres usuaris.",
"empty_column.home.public_timeline": "la línia de temps pública",
"empty_column.list": "Encara no hi ha res en aquesta llista. Quan els membres d'aquesta llista publiquin nous toots, apareixeran aquí.",
"empty_column.list": "Encara no hi ha res en aquesta llista. Quan els membres d'aquesta llista publiquin nous tuts, apareixeran aquí.",
"empty_column.lists": "Encara no tens cap llista. Quan en facis una, apareixerà aquí.",
"empty_column.mutes": "Encara no has silenciat cap usuari.",
"empty_column.notifications": "Encara no tens notificacions. Interactua amb altres per iniciar la conversa.",
"empty_column.public": "No hi ha res aquí! Escriu públicament alguna cosa o manualment segueix usuaris d'altres servidors per omplir-ho",
"error.unexpected_crash.explanation": "A causa d'un bug en el nostre codi o un problema de compatibilitat del navegador, aquesta pàgina no podria ser mostrada correctament.",
"error.unexpected_crash.next_steps": "Prova recarregant la pàgina. Si això no ajuda encara pots ser capaç d'utilitzar Mastodont a través d'un navegador diferent o app nativa.",
"error.unexpected_crash.explanation": "A causa d'un bug en el nostre codi o un problema de compatibilitat del navegador, aquesta pàgina podria no ser mostrada correctament.",
"error.unexpected_crash.next_steps": "Prova recarregant la pàgina. Si això no ajuda, encara podries ser capaç d'utilitzar Mastodon a través d'un navegador diferent o amb una app nativa.",
"errors.unexpected_crash.copy_stacktrace": "Còpia stacktrace al porta-retalls",
"errors.unexpected_crash.report_issue": "Informa d'un problema",
"federation.change": "Adjust status federation",
@ -168,7 +174,7 @@
"getting_started.documentation": "Documentació",
"getting_started.heading": "Començant",
"getting_started.invite": "Convida gent",
"getting_started.open_source_notice": "Mastodon és un programari de codi obert. Pots contribuir o informar de problemes a GitHub a {github}.",
"getting_started.open_source_notice": "Mastodon és un programari de codi obert. Pots contribuir-hi o informar de problemes a GitHub a {github}.",
"getting_started.security": "Seguretat",
"getting_started.terms": "Termes del servei",
"hashtag.column_header.tag_mode.all": "i {additional}",
@ -181,8 +187,10 @@
"hashtag.column_settings.tag_mode.none": "Cap daquests",
"hashtag.column_settings.tag_toggle": "Inclou etiquetes addicionals per a aquesta columna",
"home.column_settings.basic": "Bàsic",
"home.column_settings.show_reblogs": "Mostrar impulsos",
"home.column_settings.show_replies": "Mostrar respostes",
"home.column_settings.show_reblogs": "Mostra els impulsos",
"home.column_settings.show_replies": "Mostra les respostes",
"home.hide_announcements": "Amaga els anuncis",
"home.show_announcements": "Mostra els anuncis",
"intervals.full.days": "{number, plural, one {# dia} other {# dies}}",
"intervals.full.hours": "{number, plural, one {# hora} other {# hores}}",
"intervals.full.minutes": "{number, plural, one {# minut} other {# minuts}}",
@ -195,27 +203,27 @@
"introduction.federation.local.text": "Les publicacions públiques de les persones del teu mateix servidor apareixeran a la línia de temps local.",
"introduction.interactions.action": "Finalitza el tutorial!",
"introduction.interactions.favourite.headline": "Favorit",
"introduction.interactions.favourite.text": "Pots desar un toot per a més tard i deixar que l'autor sàpiga que t'ha agradat, marcant-lo com a favorit.",
"introduction.interactions.favourite.text": "Pots desar un tut per a més tard i deixar que l'autor sàpiga que t'ha agradat, marcant-lo com a favorit.",
"introduction.interactions.reblog.headline": "Impuls",
"introduction.interactions.reblog.text": "Pots compartir amb els teus seguidors els toots d'altres usuaris, impulsant-los.",
"introduction.interactions.reblog.text": "Pots compartir amb els teus seguidors els tuts d'altres usuaris, impulsant-los.",
"introduction.interactions.reply.headline": "Respondre",
"introduction.interactions.reply.text": "Pots respondre als toots d'altres persones i als teus propis, que els unirà en una conversa.",
"introduction.interactions.reply.text": "Pots respondre als tuts d'altres persones i als teus propis, que els unirà en una conversa.",
"introduction.welcome.action": "Som-hi!",
"introduction.welcome.headline": "Primers passos",
"introduction.welcome.text": "Benvingut al fedivers! En uns moments podràs emetre missatges i conversar amb els teus amics en una gran varietat de servidors. Però aquest servidor, {domain}, és especial: allotja el teu perfil així que recorda el seu nom.",
"keyboard_shortcuts.back": "navegar enrera",
"keyboard_shortcuts.back": "navegar enrere",
"keyboard_shortcuts.blocked": "per obrir la llista d'usuaris bloquejats",
"keyboard_shortcuts.boost": "impulsar",
"keyboard_shortcuts.column": "per a centrar un toot en una de les columnes",
"keyboard_shortcuts.compose": "per centrar l'area de composició de text",
"keyboard_shortcuts.column": "per a centrar un tut en una de les columnes",
"keyboard_shortcuts.compose": "per centrar l'àrea de composició de text",
"keyboard_shortcuts.description": "Descripció",
"keyboard_shortcuts.direct": "per obrir la columna de missatges directes",
"keyboard_shortcuts.down": "per baixar en la llista",
"keyboard_shortcuts.enter": "ampliar el toot",
"keyboard_shortcuts.enter": "per a obrir el tut",
"keyboard_shortcuts.favourite": "afavorir",
"keyboard_shortcuts.favourites": "per obrir la llista de favorits",
"keyboard_shortcuts.federated": "per obrir la línia de temps federada",
"keyboard_shortcuts.heading": "Dreçeres de teclat",
"keyboard_shortcuts.heading": "Dreceres de teclat",
"keyboard_shortcuts.home": "per a obrir la línia de temps Inici",
"keyboard_shortcuts.hotkey": "Tecla d'accés directe",
"keyboard_shortcuts.legend": "per a mostrar aquesta llegenda",
@ -224,16 +232,17 @@
"keyboard_shortcuts.muted": "per a obrir la llista d'usuaris silenciats",
"keyboard_shortcuts.my_profile": "per a obrir el teu perfil",
"keyboard_shortcuts.notifications": "per a obrir la columna de notificacions",
"keyboard_shortcuts.pinned": "per a obrir la llista de toots fixats",
"keyboard_shortcuts.open_media": "obrir mèdia",
"keyboard_shortcuts.pinned": "per a obrir la llista de tuts fixats",
"keyboard_shortcuts.profile": "per a obrir el perfil de l'autor",
"keyboard_shortcuts.reply": "respondre",
"keyboard_shortcuts.requests": "per a obrir la llista de sol·licituds de seguiment",
"keyboard_shortcuts.search": "per a centrar la cerca",
"keyboard_shortcuts.start": "per a obrir la columna \"Començar\"",
"keyboard_shortcuts.toggle_hidden": "per a mostrar/amagar text sota CW",
"keyboard_shortcuts.toggle_sensitivity": "per a mostrar/amagar mèdia",
"keyboard_shortcuts.toot": "per a començar un toot nou de trinca",
"keyboard_shortcuts.unfocus": "descentrar l'area de composició de text/cerca",
"keyboard_shortcuts.toggle_hidden": "per a mostrar o amagar text sota CW",
"keyboard_shortcuts.toggle_sensitivity": "per a mostrar o amagar contingut multimèdia",
"keyboard_shortcuts.toot": "per a començar un tut nou de trinca",
"keyboard_shortcuts.unfocus": "descentrar l'àrea de composició de text/cerca",
"keyboard_shortcuts.up": "moure amunt en la llista",
"lightbox.close": "Tancar",
"lightbox.next": "Següent",
@ -256,13 +265,14 @@
"mute_modal.hide_notifications": "Amagar notificacions d'aquest usuari?",
"navigation_bar.apps": "Apps mòbils",
"navigation_bar.blocks": "Usuaris bloquejats",
"navigation_bar.bookmarks": "Marcadors",
"navigation_bar.community_timeline": "Línia de temps Local",
"navigation_bar.compose": "Redacta nou toot",
"navigation_bar.compose": "Redacta un nou tut",
"navigation_bar.direct": "Missatges directes",
"navigation_bar.discover": "Descobreix",
"navigation_bar.domain_blocks": "Dominis ocults",
"navigation_bar.edit_profile": "Editar perfil",
"navigation_bar.favourites": "Favorits",
"navigation_bar.favourites": "Preferits",
"navigation_bar.filters": "Paraules silenciades",
"navigation_bar.follow_requests": "Sol·licituds de seguiment",
"navigation_bar.follows_and_followers": "Seguits i seguidors",
@ -272,29 +282,32 @@
"navigation_bar.logout": "Tancar sessió",
"navigation_bar.mutes": "Usuaris silenciats",
"navigation_bar.personal": "Personal",
"navigation_bar.pins": "Toots fixats",
"navigation_bar.pins": "Tuts fixats",
"navigation_bar.preferences": "Preferències",
"navigation_bar.public_timeline": "Línia de temps federada",
"navigation_bar.security": "Seguretat",
"notification.favourite": "{name} ha afavorit el teu estat",
"notification.follow": "{name} et segueix",
"notification.follow_request": "{name} ha sol·licitat seguir-te",
"notification.mention": "{name} t'ha esmentat",
"notification.own_poll": "La teva enquesta ha finalitzat",
"notification.poll": "Ha finalitzat una enquesta en la que has votat",
"notification.reblog": "{name} ha impulsat el teu estat",
"notifications.clear": "Netejar notificacions",
"notifications.clear_confirmation": "Estàs segur que vols esborrar permanenment totes les teves notificacions?",
"notifications.clear_confirmation": "Estàs segur que vols esborrar permanentment totes les teves notificacions?",
"notifications.column_settings.alert": "Notificacions d'escriptori",
"notifications.column_settings.favourite": "Favorits:",
"notifications.column_settings.favourite": "Preferits:",
"notifications.column_settings.filter_bar.advanced": "Mostra totes les categories",
"notifications.column_settings.filter_bar.category": "Barra ràpida de filtres",
"notifications.column_settings.filter_bar.show": "Mostra",
"notifications.column_settings.follow": "Nous seguidors:",
"notifications.column_settings.follow_request": "Nova sol·licitud de seguiment:",
"notifications.column_settings.mention": "Mencions:",
"notifications.column_settings.poll": "Resultats de lenquesta:",
"notifications.column_settings.push": "Notificacions push",
"notifications.column_settings.reblog": "Impulsos:",
"notifications.column_settings.show": "Mostrar en la columna",
"notifications.column_settings.sound": "Reproduïr so",
"notifications.column_settings.show": "Mostra en la columna",
"notifications.column_settings.sound": "Reproduir so",
"notifications.filter.all": "Tots",
"notifications.filter.boosts": "Impulsos",
"notifications.filter.favourites": "Favorits",
@ -327,6 +340,7 @@
"relative_time.just_now": "ara",
"relative_time.minutes": "fa {number} minuts",
"relative_time.seconds": "fa {number} segons",
"relative_time.today": "avui",
"reply_indicator.cancel": "Cancel·lar",
"report.forward": "Reenvia a {target}",
"report.forward_hint": "Aquest compte és d'un altre servidor. Enviar-hi també una copia anònima del informe?",
@ -338,20 +352,21 @@
"search_popout.search_format": "Format de cerca avançada",
"search_popout.tips.full_text": "Text simple recupera publicacions que has escrit, les marcades com a favorites, les impulsades o en les que has estat esmentat, així com usuaris, noms d'usuari i etiquetes.",
"search_popout.tips.hashtag": "etiqueta",
"search_popout.tips.status": "estat",
"search_popout.tips.status": "tut",
"search_popout.tips.text": "El text simple retorna coincidències amb els noms de visualització, els noms d'usuari i les etiquetes",
"search_popout.tips.user": "usuari",
"search_results.accounts": "Gent",
"search_results.hashtags": "Etiquetes",
"search_results.statuses": "Toots",
"search_results.statuses_fts_disabled": "La cerca de toots pel seu contingut no està habilitada en aquest servidor Mastodon.",
"search_results.statuses": "Tuts",
"search_results.statuses_fts_disabled": "La cerca de tuts pel seu contingut no està habilitada en aquest servidor Mastodon.",
"search_results.total": "{count, number} {count, plural, one {resultat} other {resultats}}",
"status.admin_account": "Obre l'interfície de moderació per a @{name}",
"status.admin_status": "Obre aquest toot a la interfície de moderació",
"status.admin_status": "Obre aquest tut a la interfície de moderació",
"status.block": "Bloqueja @{name}",
"status.bookmark": "Marcador",
"status.cancel_reblog_private": "Desfer l'impuls",
"status.cannot_reblog": "Aquesta publicació no pot ser impulsada",
"status.copy": "Copia l'enllaç al toot",
"status.copy": "Copia l'enllaç al tut",
"status.delete": "Esborrar",
"status.detailed_status": "Visualització detallada de la conversa",
"status.direct": "Missatge directe @{name}",
@ -367,13 +382,14 @@
"status.mute_conversation": "Silenciar conversació",
"status.open": "Ampliar aquest estat",
"status.pin": "Fixat en el perfil",
"status.pinned": "Toot fixat",
"status.pinned": "Tut fixat",
"status.read_more": "Llegir més",
"status.reblog": "Impuls",
"status.reblog_private": "Impulsar a l'audiència original",
"status.reblogged_by": "{name} ha impulsat",
"status.reblogs.empty": "Encara ningú no ha impulsat aquest toot. Quan algú ho faci, apareixeran aquí.",
"status.reblogs.empty": "Encara ningú no ha impulsat aquest tut. Quan algú ho faci, apareixeran aquí.",
"status.redraft": "Esborrar i reescriure",
"status.remove_bookmark": "Suprimeix el marcador",
"status.reply": "Respondre",
"status.replyAll": "Respondre al tema",
"status.report": "Informar sobre @{name}",
@ -406,9 +422,11 @@
"upload_button.label": "Afegir multimèdia (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "S'ha superat el límit de càrrega d'arxius.",
"upload_error.poll": "No es permet l'enviament de fitxers en les enquestes.",
"upload_form.audio_description": "Descriviu per a les persones amb pèrdua auditiva",
"upload_form.description": "Descriure els problemes visuals",
"upload_form.edit": "Edita",
"upload_form.undo": "Esborra",
"upload_form.video_description": "Descriu per a les persones amb pèrdua auditiva o deficiència visual",
"upload_modal.analyzing_picture": "Analitzant imatge…",
"upload_modal.apply": "Aplica",
"upload_modal.description_placeholder": "Uns salts ràpids de guineu marró sobre el gos gandul",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Previsualitza ({ratio})",
"upload_progress.label": "Pujant...",
"video.close": "Tancar el vídeo",
"video.download": "Descarrega larxiu",
"video.exit_fullscreen": "Sortir de pantalla completa",
"video.expand": "Ampliar el vídeo",
"video.fullscreen": "Pantalla completa",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Aghjunghje o toglie da e liste",
"account.badges.bot": "Bot",
"account.badges.group": "Gruppu",
"account.block": "Bluccà @{name}",
"account.block_domain": "Piattà tuttu da {domain}",
"account.blocked": "Bluccatu",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Ghjettu limitatu",
"alert.unexpected.message": "Un prublemu inaspettatu hè accadutu.",
"alert.unexpected.title": "Uups!",
"announcement.announcement": "Annunziu",
"autosuggest_hashtag.per_week": "{count} per settimana",
"boost_modal.combo": "Pudete appughjà nant'à {combo} per saltà quessa a prussima volta",
"bundle_column_error.body": "C'hè statu un prublemu caricandu st'elementu.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "C'hè statu un prublemu caricandu st'elementu.",
"bundle_modal_error.retry": "Pruvà torna",
"column.blocks": "Utilizatori bluccati",
"column.bookmarks": "Segnalibri",
"column.community": "Linea pubblica lucale",
"column.direct": "Missaghji diretti",
"column.directory": "Percorre i prufili",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Durata di u scandagliu",
"compose_form.poll.option_placeholder": "Scelta {number}",
"compose_form.poll.remove_option": "Toglie sta scelta",
"compose_form.poll.switch_to_multiple": "Cambià u scandagliu per accittà parechje scelte",
"compose_form.poll.switch_to_single": "Cambià u scandagliu per ùn accittà ch'una scelta",
"compose_form.publish": "Toot",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Indicà u media cum'è sensibile",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Nisun statutu quì!",
"empty_column.account_unavailable": "Prufile micca dispunibule",
"empty_column.blocks": "Per avà ùn avete bluccatu manc'un utilizatore.",
"empty_column.bookmarked_statuses": "Ùn avete manc'un segnalibru. Quandu aghjunghjerate unu, sarà mustratu quì.",
"empty_column.community": "Ùn c'hè nunda indè a linea lucale. Scrivete puru qualcosa!",
"empty_column.direct": "Ùn avete ancu nisun missaghju direttu. S'è voi mandate o ricevete unu, u vidarete quì.",
"empty_column.domain_blocks": "Ùn c'hè manc'un duminiu bluccatu avà.",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Bàsichi",
"home.column_settings.show_reblogs": "Vede e spartere",
"home.column_settings.show_replies": "Vede e risposte",
"home.hide_announcements": "Piattà annunzii",
"home.show_announcements": "Vede annunzii",
"intervals.full.days": "{number, plural, one {# ghjornu} other {# ghjorni}}",
"intervals.full.hours": "{number, plural, one {# ora} other {# ore}}",
"intervals.full.minutes": "{number, plural, one {# minuta} other {# minute}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "per apre a lista di l'utilizatori piattati",
"keyboard_shortcuts.my_profile": "per apre u vostru prufile",
"keyboard_shortcuts.notifications": "per apre a culonna di nutificazione",
"keyboard_shortcuts.open_media": "per apre i media",
"keyboard_shortcuts.pinned": "per apre a lista di statuti puntarulati",
"keyboard_shortcuts.profile": "per apre u prufile di l'autore",
"keyboard_shortcuts.reply": "risponde",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Piattà nutificazione da st'utilizatore?",
"navigation_bar.apps": "Applicazione per u telefuninu",
"navigation_bar.blocks": "Utilizatori bluccati",
"navigation_bar.bookmarks": "Segnalibri",
"navigation_bar.community_timeline": "Linea pubblica lucale",
"navigation_bar.compose": "Scrive un novu statutu",
"navigation_bar.direct": "Missaghji diretti",
@ -278,7 +288,9 @@
"navigation_bar.security": "Sicurità",
"notification.favourite": "{name} hà aghjuntu u vostru statutu à i so favuriti",
"notification.follow": "{name} v'hà seguitatu",
"notification.follow_request": "{name} vole abbunassi à u vostru contu",
"notification.mention": "{name} v'hà mintuvatu",
"notification.own_poll": "U vostru scandagliu hè compiu",
"notification.poll": "Un scandagliu induve avete vutatu hè finitu",
"notification.reblog": "{name} hà spartutu u vostru statutu",
"notifications.clear": "Purgà e nutificazione",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Barra di ricerca pronta",
"notifications.column_settings.filter_bar.show": "Mustrà",
"notifications.column_settings.follow": "Abbunati novi:",
"notifications.column_settings.follow_request": "Nove dumande d'abbunamentu:",
"notifications.column_settings.mention": "Minzione:",
"notifications.column_settings.poll": "Risultati:",
"notifications.column_settings.push": "Nutificazione Push",
@ -327,6 +340,7 @@
"relative_time.just_now": "avà",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "oghji",
"reply_indicator.cancel": "Annullà",
"report.forward": "Trasferisce à {target}",
"report.forward_hint": "U contu hè nant'à un'altru servore. Vulete ancu mandà una copia anonima di u signalamentu quallà?",
@ -349,6 +363,7 @@
"status.admin_account": "Apre l'interfaccia di muderazione per @{name}",
"status.admin_status": "Apre stu statutu in l'interfaccia di muderazione",
"status.block": "Bluccà @{name}",
"status.bookmark": "Segnalibru",
"status.cancel_reblog_private": "Ùn sparte più",
"status.cannot_reblog": "Stu statutu ùn pò micca esse spartutu",
"status.copy": "Cupià ligame indè u statutu",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name} hà spartutu",
"status.reblogs.empty": "Per avà nisunu hà spartutu u statutu. Quandu qualch'unu u sparterà, u so contu sarà mustratu quì.",
"status.redraft": "Sguassà è riscrive",
"status.remove_bookmark": "Toglie segnalibru",
"status.reply": "Risponde",
"status.replyAll": "Risponde à tutti",
"status.report": "Palisà @{name}",
@ -406,9 +422,11 @@
"upload_button.label": "Aghjunghje un media (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Limita di caricamentu di fugliali trapassata.",
"upload_error.poll": "Ùn si pò micca caricà fugliali cù i scandagli.",
"upload_form.audio_description": "Discrizzione per i ciochi",
"upload_form.description": "Discrive per i malvistosi",
"upload_form.edit": "Mudificà",
"upload_form.undo": "Sguassà",
"upload_form.video_description": "Discrizzione per i ciochi o cechi",
"upload_modal.analyzing_picture": "Analisi di u ritrattu…",
"upload_modal.apply": "Affettà",
"upload_modal.description_placeholder": "Chì tempi brevi ziu, quandu solfeghji",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Vista ({ratio})",
"upload_progress.label": "Caricamentu...",
"video.close": "Chjudà a video",
"video.download": "Scaricà fugliale",
"video.exit_fullscreen": "Caccià u pienu screnu",
"video.expand": "Ingrandà a video",
"video.fullscreen": "Pienu screnu",

View File

@ -1,14 +1,15 @@
{
"account.add_or_remove_from_list": "Přidat nebo odstranit ze seznamů",
"account.badges.bot": "Robot",
"account.badges.group": "Skupina",
"account.block": "Zablokovat uživatele @{name}",
"account.block_domain": "Skrýt vše z {domain}",
"account.blocked": "Blokován/a",
"account.cancel_follow_request": "Zrušit požadavek o sledování",
"account.direct": "Poslat přímou zprávu uživateli @{name}",
"account.block_domain": "Skrýt vše ze serveru {domain}",
"account.blocked": "Blokováno",
"account.cancel_follow_request": "Zrušit žádost o sledování",
"account.direct": "Poslat uživateli @{name} přímou zprávu",
"account.domain_blocked": "Doména skryta",
"account.edit_profile": "Upravit profil",
"account.endorse": "Představit na profilu",
"account.endorse": "Zvýraznit na profilu",
"account.follow": "Sledovat",
"account.followers": "Sledující",
"account.followers.empty": "Tohoto uživatele ještě nikdo nesleduje.",
@ -21,42 +22,44 @@
"account.locked_info": "Stav soukromí tohoto účtu je nastaven na zamčeno. Jeho vlastník ručně posuzuje, kdo ho může sledovat.",
"account.media": "Média",
"account.mention": "Zmínit uživatele @{name}",
"account.moved_to": "{name} se přesunul/a na:",
"account.moved_to": "Uživatel {name} se přesunul na:",
"account.mute": "Skrýt uživatele @{name}",
"account.mute_notifications": "Skrýt oznámení od uživatele @{name}",
"account.muted": "Skryt/a",
"account.muted": "Uživatel skryt",
"account.never_active": "Nikdy",
"account.posts": "Tooty",
"account.posts_with_replies": "Tooty a odpovědi",
"account.report": "Nahlásit uživatele @{name}",
"account.requested": "Čekám na schválení. Kliknutím zrušíte požadavek o sledování",
"account.requested": "Čeká na schválení. Kliknutím žádost o sledování zrušíte",
"account.share": "Sdílet profil uživatele @{name}",
"account.show_reblogs": "Zobrazit boosty od uživatele @{name}",
"account.unblock": "Odblokovat uživatele @{name}",
"account.unblock_domain": "Odkrýt doménu {domain}",
"account.unendorse": "Nepředstavit na profilu",
"account.unendorse": "Nezvýrazňovat na profilu",
"account.unfollow": "Přestat sledovat",
"account.unmute": "Odkrýt uživatele @{name}",
"account.unmute_notifications": "Odkrýt oznámení od uživatele @{name}",
"alert.rate_limited.message": "Prosím zkuste to znovu za {retry_time, time, medium}.",
"alert.rate_limited.message": "Zkuste to prosím znovu za {retry_time, time, medium}.",
"alert.rate_limited.title": "Rychlost omezena",
"alert.unexpected.message": "Objevila se neočekávaná chyba.",
"alert.unexpected.title": "Jejda!",
"announcement.announcement": "Oznámení",
"autosuggest_hashtag.per_week": "{count} za týden",
"boost_modal.combo": "Příště můžete pro přeskočení stisknout {combo}",
"bundle_column_error.body": "Při načítání tohoto komponentu se něco pokazilo.",
"bundle_column_error.body": "Při načítání této komponenty se něco pokazilo.",
"bundle_column_error.retry": "Zkuste to znovu",
"bundle_column_error.title": "Chyba sítě",
"bundle_modal_error.close": "Zavřít",
"bundle_modal_error.message": "Při načítání tohoto komponentu se něco pokazilo.",
"bundle_modal_error.message": "Při načítání této komponenty se něco pokazilo.",
"bundle_modal_error.retry": "Zkusit znovu",
"column.blocks": "Blokovaní uživatelé",
"column.bookmarks": "Záložky",
"column.community": "Místní časová osa",
"column.direct": "Přímé zprávy",
"column.directory": "Prozkoumat profily",
"column.domain_blocks": "Skryté domény",
"column.favourites": "Oblíbené",
"column.follow_requests": "Požadavky o sledování",
"column.follow_requests": "Žádosti o sledování",
"column.home": "Domů",
"column.lists": "Seznamy",
"column.mutes": "Skrytí uživatelé",
@ -75,13 +78,15 @@
"compose_form.direct_message_warning": "Tento toot bude odeslán pouze zmíněným uživatelům.",
"compose_form.direct_message_warning_learn_more": "Zjistit více",
"compose_form.hashtag_warning": "Tento toot nebude zobrazen pod žádným hashtagem, neboť je neuvedený. Pouze veřejné tooty mohou být vyhledány podle hashtagu.",
"compose_form.lock_disclaimer": "Váš účet není {locked}. Kdokoliv vás může sledovat a vidět vaše příspěvky pouze pro sledující.",
"compose_form.lock_disclaimer": "Váš účet není {locked}. Kdokoliv vás může sledovat a vidět vaše příspěvky učené pouze pro sledující.",
"compose_form.lock_disclaimer.lock": "uzamčen",
"compose_form.placeholder": "Co se vám honí hlavou?",
"compose_form.poll.add_option": "Přidat volbu",
"compose_form.poll.duration": "Délka ankety",
"compose_form.poll.duration": "Doba trvání ankety",
"compose_form.poll.option_placeholder": "Volba {number}",
"compose_form.poll.remove_option": "Odstranit tuto volbu",
"compose_form.poll.switch_to_multiple": "Povolit u ankety výběr více možností",
"compose_form.poll.switch_to_single": "Povolit u ankety výběr jediné možnosti",
"compose_form.publish": "Tootnout",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Označit média jako citlivá",
@ -93,30 +98,30 @@
"confirmation_modal.cancel": "Zrušit",
"confirmations.block.block_and_report": "Blokovat a nahlásit",
"confirmations.block.confirm": "Blokovat",
"confirmations.block.message": "Jste si jistý/á, že chcete zablokovat uživatele {name}?",
"confirmations.block.message": "Opravdu chcete zablokovat uživatele {name}?",
"confirmations.delete.confirm": "Smazat",
"confirmations.delete.message": "Jste si jistý/á, že chcete smazat tento toot?",
"confirmations.delete.message": "Opravdu chcete smazat tento toot?",
"confirmations.delete_list.confirm": "Smazat",
"confirmations.delete_list.message": "Jste si jistý/á, že chcete tento seznam navždy smazat?",
"confirmations.delete_list.message": "Opravdu chcete tento seznam navždy smazat?",
"confirmations.domain_block.confirm": "Skrýt celou doménu",
"confirmations.domain_block.message": "Jste si opravdu, opravdu jistý/á, že chcete blokovat celou doménu {domain}? Ve většině případů stačí zablokovat nebo skrýt pár konkrétních uživatelů, což se doporučuje. Z této domény neuvidíte obsah v žádné veřejné časové ose ani v oznámeních. Vaši sledující z této domény budou odstraněni.",
"confirmations.domain_block.message": "Opravdu chcete blokovat celou doménu {domain}? Ve většině případů stačí zablokovat nebo skrýt pár konkrétních uživatelů, což také doporučujeme. Z této domény neuvidíte obsah v žádné veřejné časové ose ani v oznámeních. Vaši sledující z této domény budou odstraněni.",
"confirmations.logout.confirm": "Odhlásit",
"confirmations.logout.message": "Jste si jistý/á, že se chcete odhlásit?",
"confirmations.logout.message": "Opravdu se chcete odhlásit?",
"confirmations.mute.confirm": "Skrýt",
"confirmations.mute.explanation": "Tohle skryje jeho příspěvky a příspěvky, které ho zmiňují, ale uživatel pořád bude moci vidět vaše příspěvky a sledovat vás.",
"confirmations.mute.message": "Jste si jistý/á, že chcete skrýt uživatele {name}?",
"confirmations.mute.explanation": "Tohle skryje uživatelovi příspěvky a příspěvky, které ho zmiňují, ale uživatel stále uvidí vaše příspěvky a může vás sledovat.",
"confirmations.mute.message": "Opravdu chcete uživatele {name} skrýt?",
"confirmations.redraft.confirm": "Smazat a přepsat",
"confirmations.redraft.message": "Jste si jistý/á, že chcete smazat a přepsat tento toot? Oblíbení a boosty budou ztraceny a odpovědi na původní příspěvek budou opuštěny.",
"confirmations.reply.confirm": "Odpovědět",
"confirmations.reply.message": "Odpovězením nyní přepíšete zprávu, kterou aktuálně píšete. Jste si jistý/á, že chcete pokračovat?",
"confirmations.reply.message": "Odpověď přepíše vaši rozepsanou zprávu. Opravdu chcete pokračovat?",
"confirmations.unfollow.confirm": "Přestat sledovat",
"confirmations.unfollow.message": "jste si jistý/á, že chcete přestat sledovat uživatele {name}?",
"confirmations.unfollow.message": "Opravdu chcete uživatele {name} přestat sledovat?",
"conversation.delete": "Smazat konverzaci",
"conversation.mark_as_read": "Označit jako přečtenou",
"conversation.open": "Zobrazit konverzaci",
"conversation.with": "S {names}",
"directory.federated": "Ze známého fedivesmíru",
"directory.local": "Pouze z {domain}",
"directory.local": "Pouze z domény {domain}",
"directory.new_arrivals": "Nově příchozí",
"directory.recently_active": "Nedávno aktivní",
"embed.instructions": "Pro přidání tootu na vaši webovou stránku zkopírujte níže uvedený kód.",
@ -127,33 +132,34 @@
"emoji_button.food": "Jídla a nápoje",
"emoji_button.label": "Vložit emoji",
"emoji_button.nature": "Příroda",
"emoji_button.not_found": "Žádná emoji!! (╯°□°)╯︵ ┻━┻",
"emoji_button.not_found": "Žádné emoji! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "Předměty",
"emoji_button.people": "Lidé",
"emoji_button.recent": "Často používaná",
"emoji_button.recent": "Často používané",
"emoji_button.search": "Hledat…",
"emoji_button.search_results": "Výsledky hledání",
"emoji_button.symbols": "Symboly",
"emoji_button.travel": "Cestování a místa",
"empty_column.account_timeline": "Tady nejsou žádné tooty!",
"empty_column.account_timeline": "Nejsou tu žádné tooty!",
"empty_column.account_unavailable": "Profil nedostupný",
"empty_column.blocks": "Ještě jste nezablokoval/a žádného uživatele.",
"empty_column.blocks": "Ještě jste nezablokovali žádného uživatele.",
"empty_column.bookmarked_statuses": "Ještě nemáte v záložkách žádné tooty. Pokud si do nich nějaký přidáte, zobrazí se zde.",
"empty_column.community": "Místní časová osa je prázdná. Napište něco veřejně a rozhýbejte to tu!",
"empty_column.direct": "Ještě nemáte žádné přímé zprávy. Pokud nějakou pošlete nebo dostanete, zobrazí se zde.",
"empty_column.domain_blocks": "Ještě nejsou žádné skryté domény.",
"empty_column.domain_blocks": "Ještě nemáte žádné skryté domény.",
"empty_column.favourited_statuses": "Ještě nemáte žádné oblíbené tooty. Pokud si nějaký oblíbíte, zobrazí se zde.",
"empty_column.favourites": "Tento toot si ještě nikdo neoblíbil. Pokud to někdo udělá, zobrazí se zde.",
"empty_column.follow_requests": "Ještě nemáte žádné požadavky o sledování. Pokud nějaký obdržíte, zobrazí se zde.",
"empty_column.follow_requests": "Ještě nemáte žádné žádosti o sledování. Pokud nějakou obdržíte, zobrazí se zde.",
"empty_column.hashtag": "Pod tímto hashtagem ještě nic není.",
"empty_column.home": "Vaše domovská časová osa je prázdná! Začněte navštívením {public} nebo použijte hledání a seznamte se s dalšími uživateli.",
"empty_column.home": "Vaše domovská časová osa je prázdná! Začněte návštěvou {public} nebo použijte hledání a seznamte se s dalšími uživateli.",
"empty_column.home.public_timeline": "veřejné časové osy",
"empty_column.list": "V tomto seznamu ještě nic není. Pokud budou členové tohoto seznamu psát nové tooty, objeví se zde.",
"empty_column.list": "V tomto seznamu ještě nic není. Pokud nějaký člen z tohoto seznamu napíše nový toot, objeví se zde.",
"empty_column.lists": "Ještě nemáte žádný seznam. Pokud nějaký vytvoříte, zobrazí se zde.",
"empty_column.mutes": "Ještě jste neskryl/a žádné uživatele.",
"empty_column.notifications": "Ještě nemáte žádná oznámení. Začněte konverzaci komunikováním s ostatními.",
"empty_column.mutes": "Ještě jste neskryli žádného uživatele.",
"empty_column.notifications": "Ještě nemáte žádná oznámení. Začněte s někým konverzaci.",
"empty_column.public": "Tady nic není! Napište něco veřejně, nebo začněte ručně sledovat uživatele z jiných serverů, aby tu něco přibylo",
"error.unexpected_crash.explanation": "Kvůli chybě v našem kódu nebo problému s kompatibilitou prohlížeče nemohla být tato stránka načtena správně.",
"error.unexpected_crash.next_steps": "Zkuste obnovit stránku. Pokud to nepomůže, budete možná moci dále používat Mastodon pomocí jiného prohlížeče nebo nativní aplikace.",
"error.unexpected_crash.next_steps": "Zkuste stránku načíst znovu. Pokud to nepomůže, zkuste Mastodon používat pomocí jiného prohlížeče nebo nativní aplikace.",
"errors.unexpected_crash.copy_stacktrace": "Zkopírovat stacktrace do schránky",
"errors.unexpected_crash.report_issue": "Nahlásit problém",
"federation.change": "Adjust status federation",
@ -168,13 +174,13 @@
"getting_started.documentation": "Dokumentace",
"getting_started.heading": "Začínáme",
"getting_started.invite": "Pozvat lidi",
"getting_started.open_source_notice": "Mastodon je otevřený software. Na GitHubu k němu můžete přispět nebo nahlásit chyby: {github}.",
"getting_started.open_source_notice": "Mastodon je otevřený software. Přispět do jeho vývoje nebo hlásit chyby můžete na GitHubu {github}.",
"getting_started.security": "Nastavení účtu",
"getting_started.terms": "Podmínky používání",
"hashtag.column_header.tag_mode.all": "a {additional}",
"hashtag.column_header.tag_mode.any": "nebo {additional}",
"hashtag.column_header.tag_mode.none": "bez {additional}",
"hashtag.column_settings.select.no_options_message": "Žádné návrhy nenalezeny",
"hashtag.column_settings.select.no_options_message": "Nenalezeny žádné návrhy",
"hashtag.column_settings.select.placeholder": "Zadejte hashtagy…",
"hashtag.column_settings.tag_mode.all": "Všechny z těchto",
"hashtag.column_settings.tag_mode.any": "Jakékoliv z těchto",
@ -183,14 +189,16 @@
"home.column_settings.basic": "Základní",
"home.column_settings.show_reblogs": "Zobrazit boosty",
"home.column_settings.show_replies": "Zobrazit odpovědi",
"intervals.full.days": "{number, plural, one {# den} few {# dny} many {# dne} other {# dní}}",
"intervals.full.hours": "{number, plural, one {# hodina} few {# hodiny} many {# hodiny} other {# hodin}}",
"intervals.full.minutes": "{number, plural, one {# minuta} few {# minuty} many {# minuty} other {# minut}}",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# den} few {# dny} many {# dní} other {# dní}}",
"intervals.full.hours": "{number, plural, one {# hodina} few {# hodiny} many {# hodin} other {# hodin}}",
"intervals.full.minutes": "{number, plural, one {# minuta} few {# minuty} many {# minut} other {# minut}}",
"introduction.federation.action": "Další",
"introduction.federation.federated.headline": "Federovaná",
"introduction.federation.federated.text": "Veřejné příspěvky z jiných serverů ve fedivesmíru se zobrazí na federované časové ose.",
"introduction.federation.home.headline": "Domů",
"introduction.federation.home.text": "Příspěvky od lidí, které sledujete, se objeví ve vašem domovském proudu. Můžete sledovat kohokoliv na jakémkoliv serveru!",
"introduction.federation.home.text": "Příspěvky od lidí, které sledujete, se objeví ve vašem domovském kanálu. Můžete sledovat kohokoliv na jakémkoliv serveru!",
"introduction.federation.local.headline": "Místní",
"introduction.federation.local.text": "Veřejné příspěvky od lidí ze stejného serveru jako vy se zobrazí na místní časové ose.",
"introduction.interactions.action": "Dokončit tutoriál!",
@ -202,39 +210,40 @@
"introduction.interactions.reply.text": "Můžete odpovídat na tooty jiných lidí i vaše vlastní, což je propojí do konverzace.",
"introduction.welcome.action": "Jdeme na to!",
"introduction.welcome.headline": "První kroky",
"introduction.welcome.text": "Vítejte ve fedivesmíru! Za malou chvíli budete moci posílat zprávy a povídat si se svými přátely přes širokou škálu serverů. Tento server, {domain}, je však speciálníje na něm váš profil, proto si zapamatujte jeho jméno.",
"keyboard_shortcuts.back": "k návratu zpět",
"keyboard_shortcuts.blocked": "k otevření seznamu blokovaných uživatelů",
"keyboard_shortcuts.boost": "k boostnutí",
"keyboard_shortcuts.column": "k zaměření na toot v jednom ze sloupců",
"keyboard_shortcuts.compose": "k zaměření na psací prostor",
"introduction.welcome.text": "Vítejte ve fedivesmíru! Za malou chvíli budete moci posílat zprávy a povídat si se svými přáteli z mnoha serverů. Tento server {domain}, je však speciálníje na něm váš profil a proto si zapamatujte jeho jméno.",
"keyboard_shortcuts.back": "návrat zpět",
"keyboard_shortcuts.blocked": "otevřít seznam blokovaných uživatelů",
"keyboard_shortcuts.boost": "boost",
"keyboard_shortcuts.column": "zaměření na toot v jednom ze sloupců",
"keyboard_shortcuts.compose": "zaměření na oblast pro psaní",
"keyboard_shortcuts.description": "Popis",
"keyboard_shortcuts.direct": "k otevření sloupce s přímými zprávami",
"keyboard_shortcuts.down": "k posunutí dolů v seznamu",
"keyboard_shortcuts.enter": "k otevření tootu",
"keyboard_shortcuts.favourite": "k oblíbení",
"keyboard_shortcuts.favourites": "k otevření seznamu oblíbených",
"keyboard_shortcuts.federated": "k otevření federované časové osy",
"keyboard_shortcuts.direct": "otevření sloupce s přímými zprávami",
"keyboard_shortcuts.down": "posunutí dolů v seznamu",
"keyboard_shortcuts.enter": "otevření tootu",
"keyboard_shortcuts.favourite": "oblíbení",
"keyboard_shortcuts.favourites": "otevření seznamu oblíbených",
"keyboard_shortcuts.federated": "otevření federované časové osy",
"keyboard_shortcuts.heading": "Klávesové zkratky",
"keyboard_shortcuts.home": "k otevření domovské časové osy",
"keyboard_shortcuts.home": "otevření domovské časové osy",
"keyboard_shortcuts.hotkey": "Klávesová zkratka",
"keyboard_shortcuts.legend": "k zobrazení této legendy",
"keyboard_shortcuts.local": "k otevření místní časové osy",
"keyboard_shortcuts.mention": "ke zmínění autora",
"keyboard_shortcuts.muted": "k otevření seznamu skrytých uživatelů",
"keyboard_shortcuts.my_profile": "k otevření vašeho profilu",
"keyboard_shortcuts.notifications": "k otevření sloupce s oznámeními",
"keyboard_shortcuts.pinned": "k otevření seznamu připnutých tootů",
"keyboard_shortcuts.profile": "k otevření autorova profilu",
"keyboard_shortcuts.reply": "k odpovězení",
"keyboard_shortcuts.requests": "k otevření seznamu požadavků o sledování",
"keyboard_shortcuts.search": "k zaměření na hledání",
"keyboard_shortcuts.start": "k otevření sloupce „začínáme“",
"keyboard_shortcuts.toggle_hidden": "k zobrazení/skrytí textu za varováním o obsahu",
"keyboard_shortcuts.toggle_sensitivity": "k zobrazení/skrytí médií",
"keyboard_shortcuts.toot": "k napsání úplně nového tootu",
"keyboard_shortcuts.unfocus": "ke zrušení zaměření na psací prostor/hledání",
"keyboard_shortcuts.up": "k posunutí nahoru v seznamu",
"keyboard_shortcuts.legend": "zobrazení této legendy",
"keyboard_shortcuts.local": "otevření místní časové osy",
"keyboard_shortcuts.mention": "zmínění autora",
"keyboard_shortcuts.muted": "otevření seznamu skrytých uživatelů",
"keyboard_shortcuts.my_profile": "otevření vašeho profilu",
"keyboard_shortcuts.notifications": "otevření sloupce s oznámeními",
"keyboard_shortcuts.open_media": "otevření médií",
"keyboard_shortcuts.pinned": "otevření seznamu připnutých tootů",
"keyboard_shortcuts.profile": "otevření autorova profilu",
"keyboard_shortcuts.reply": "odpovědět",
"keyboard_shortcuts.requests": "otevření seznamu požadavků o sledování",
"keyboard_shortcuts.search": "zaměření na hledání",
"keyboard_shortcuts.start": "otevření sloupce „začínáme“",
"keyboard_shortcuts.toggle_hidden": "zobrazení/skrytí textu za varováním o obsahu",
"keyboard_shortcuts.toggle_sensitivity": "zobrazení/skrytí médií",
"keyboard_shortcuts.toot": "napsání úplně nového tootu",
"keyboard_shortcuts.unfocus": "zrušení zaměření na psací prostor/hledání",
"keyboard_shortcuts.up": "posunutí nahoru v seznamu",
"lightbox.close": "Zavřít",
"lightbox.next": "Další",
"lightbox.previous": "Předchozí",
@ -249,13 +258,14 @@
"lists.search": "Hledejte mezi lidmi, které sledujete",
"lists.subheading": "Vaše seznamy",
"load_pending": "{count, plural, one {# nová položka} few {# nové položky} many {# nových položek} other {# nových položek}}",
"loading_indicator.label": "Načítám…",
"media_gallery.toggle_visible": "Přepínat viditelnost",
"loading_indicator.label": "Načítá…",
"media_gallery.toggle_visible": "Přepnout viditelnost",
"missing_indicator.label": "Nenalezeno",
"missing_indicator.sublabel": "Tento zdroj se nepodařilo najít",
"mute_modal.hide_notifications": "Skrýt oznámení od tohoto uživatele?",
"navigation_bar.apps": "Mobilní aplikace",
"navigation_bar.blocks": "Blokovaní uživatelé",
"navigation_bar.bookmarks": "Záložky",
"navigation_bar.community_timeline": "Místní časová osa",
"navigation_bar.compose": "Vytvořit nový toot",
"navigation_bar.direct": "Přímé zprávy",
@ -264,7 +274,7 @@
"navigation_bar.edit_profile": "Upravit profil",
"navigation_bar.favourites": "Oblíbené",
"navigation_bar.filters": "Skrytá slova",
"navigation_bar.follow_requests": "Požadavky o sledování",
"navigation_bar.follow_requests": "Žádosti o sledování",
"navigation_bar.follows_and_followers": "Sledovaní a sledující",
"navigation_bar.info": "O tomto serveru",
"navigation_bar.keyboard_shortcuts": "Klávesové zkratky",
@ -276,19 +286,22 @@
"navigation_bar.preferences": "Předvolby",
"navigation_bar.public_timeline": "Federovaná časová osa",
"navigation_bar.security": "Zabezpečení",
"notification.favourite": "{name} si oblíbil/a váš toot",
"notification.follow": "{name} vás začal/a sledovat",
"notification.mention": "{name} vás zmínil/a",
"notification.poll": "Anketa, ve které jste hlasoval/a, skončila",
"notification.reblog": "{name} boostnul/a váš toot",
"notifications.clear": "Vymazat oznámení",
"notifications.clear_confirmation": "Jste si jistý/á, že chcete trvale vymazat všechna vaše oznámení?",
"notifications.column_settings.alert": "Desktopová oznámení",
"notification.favourite": "Uživatel {name} si oblíbil váš toot",
"notification.follow": "Uživatel {name} vás začal sledovat",
"notification.follow_request": "Uživatel {name} požádal o povolení vás sledovat",
"notification.mention": "Uživatel {name} vás zmínil",
"notification.own_poll": "Vaše anketa skončila",
"notification.poll": "Anketa, ve které jste hlasovali, skončila",
"notification.reblog": "Uživatel {name} boostnul váš toot",
"notifications.clear": "Smazat oznámení",
"notifications.clear_confirmation": "Opravdu chcete trvale smazat všechna vaše oznámení?",
"notifications.column_settings.alert": "Oznámení na počítači",
"notifications.column_settings.favourite": "Oblíbení:",
"notifications.column_settings.filter_bar.advanced": "Zobrazit všechny kategorie",
"notifications.column_settings.filter_bar.category": "Panel rychlého filtrování",
"notifications.column_settings.filter_bar.show": "Zobrazit",
"notifications.column_settings.follow": "Noví sledující:",
"notifications.column_settings.follow_request": "Nové žádosti o sledování:",
"notifications.column_settings.mention": "Zmínky:",
"notifications.column_settings.poll": "Výsledky anket:",
"notifications.column_settings.push": "Push oznámení",
@ -302,12 +315,12 @@
"notifications.filter.mentions": "Zmínky",
"notifications.filter.polls": "Výsledky anket",
"notifications.group": "{count} oznámení",
"poll.closed": "Uzavřena",
"poll.closed": "Uzavřeno",
"poll.refresh": "Obnovit",
"poll.total_people": "{count, plural, one {# člověk} few {# lidé} many {# lidí} other {# lidí}}",
"poll.total_votes": "{count, plural, one {# hlas} few {# hlasy} many {# hlasu} other {# hlasů}}",
"poll.total_votes": "{count, plural, one {# hlas} few {# hlasy} many {# hlasů} other {# hlasů}}",
"poll.vote": "Hlasovat",
"poll.voted": "Pro tuto odpověď jste hlasoval/a",
"poll.voted": "Pro tuto odpověď jste hlasovali",
"poll_button.add_poll": "Přidat anketu",
"poll_button.remove_poll": "Odstranit anketu",
"privacy.change": "Změnit soukromí tootu",
@ -317,26 +330,27 @@
"privacy.private.short": "Pouze pro sledující",
"privacy.public.long": "Odeslat na veřejné časové osy",
"privacy.public.short": "Veřejný",
"privacy.unlisted.long": "Neodeslat na veřejné časové osy",
"privacy.unlisted.long": "Neodesílat na veřejné časové osy",
"privacy.unlisted.short": "Neuvedený",
"refresh": "Obnovit",
"regeneration_indicator.label": "Načítám…",
"regeneration_indicator.sublabel": "Váš domovský proud se připravuje!",
"regeneration_indicator.label": "Načítá…",
"regeneration_indicator.sublabel": "Váš domovský kanál se připravuje!",
"relative_time.days": "{number} d",
"relative_time.hours": "{number} h",
"relative_time.just_now": "teď",
"relative_time.minutes": "{number} m",
"relative_time.seconds": "{number} s",
"relative_time.today": "today",
"reply_indicator.cancel": "Zrušit",
"report.forward": "Přeposlat na {target}",
"report.forward_hint": "Tento účet je z jiného serveru. Chcete na něj také poslat anonymizovanou kopii?",
"report.hint": "Nahlášení bude zasláno moderátorům vašeho serveru. Níže můžete uvést, proč tento účet nahlašujete:",
"report.hint": "Hlášení bude zasláno moderátorům vašeho serveru. Níže můžete uvést, proč tento účet nahlašujete:",
"report.placeholder": "Dodatečné komentáře",
"report.submit": "Odeslat",
"report.target": "Nahlášení uživatele {target}",
"search.placeholder": "Hledat",
"search_popout.search_format": "Pokročilé hledání",
"search_popout.tips.full_text": "Jednoduchý text navrátí tooty, které jste napsal/a, oblíbil/a si, boostnul/a, nebo v nich byl/a zmíněn/a, a také odpovídající přezdívky, zobrazovaná jména a hashtagy.",
"search_popout.tips.full_text": "Jednoduchý text navrátí tooty, které jste napsali, oblíbili si, boostnuli, nebo vás v nich někdo zmínil, a také odpovídající přezdívky, zobrazovaná jména a hashtagy.",
"search_popout.tips.hashtag": "hashtag",
"search_popout.tips.status": "toot",
"search_popout.tips.text": "Jednoduchý text navrátí odpovídající zobrazovaná jména, přezdívky a hashtagy",
@ -345,16 +359,17 @@
"search_results.hashtags": "Hashtagy",
"search_results.statuses": "Tooty",
"search_results.statuses_fts_disabled": "Vyhledávání tootů podle jejich obsahu není na tomto serveru Mastodon povoleno.",
"search_results.total": "{count, number} {count, plural, one {výsledek} few {výsledky} many {výsledku} other {výsledků}}",
"search_results.total": "{count, number} {count, plural, one {výsledek} few {výsledky} many {výsledků} other {výsledků}}",
"status.admin_account": "Otevřít moderátorské rozhraní pro uživatele @{name}",
"status.admin_status": "Otevřít tento toot v moderátorském rozhraní",
"status.block": "Zablokovat uživatele @{name}",
"status.bookmark": "Přidat do záložek",
"status.cancel_reblog_private": "Zrušit boost",
"status.cannot_reblog": "Tento příspěvek nemůže být boostnutý",
"status.copy": "Kopírovat odkaz k tootu",
"status.delete": "Smazat",
"status.detailed_status": "Detailní zobrazení konverzace",
"status.direct": "Poslat přímou zprávu uživateli @{name}",
"status.detailed_status": "Podrobné zobrazení konverzace",
"status.direct": "Poslat uživateli @{name} přímou zprávu",
"status.embed": "Vložit na web",
"status.favourite": "Oblíbit",
"status.filtered": "Filtrováno",
@ -371,9 +386,10 @@
"status.read_more": "Číst více",
"status.reblog": "Boostnout",
"status.reblog_private": "Boostnout původnímu publiku",
"status.reblogged_by": "{name} boostnul/a",
"status.reblogged_by": "Uživatel {name} boostnul",
"status.reblogs.empty": "Tento toot ještě nikdo neboostnul. Pokud to někdo udělá, zobrazí se zde.",
"status.redraft": "Smazat a přepsat",
"status.remove_bookmark": "Odstranit ze záložek",
"status.reply": "Odpovědět",
"status.replyAll": "Odpovědět na vlákno",
"status.report": "Nahlásit uživatele @{name}",
@ -388,37 +404,40 @@
"status.unmute_conversation": "Odkrýt konverzaci",
"status.unpin": "Odepnout z profilu",
"suggestions.dismiss": "Odmítnout návrh",
"suggestions.header": "Mohli by vás zajímat…",
"suggestions.header": "Mohlo by vás zajímat…",
"tabs_bar.federated_timeline": "Federovaná",
"tabs_bar.home": "Domů",
"tabs_bar.local_timeline": "Místní",
"tabs_bar.notifications": "Oznámení",
"tabs_bar.search": "Hledat",
"time_remaining.days": "{number, plural, one {Zbývá # den} few {Zbývají # dny} many {Zbývá # dne} other {Zbývá # dní}}",
"time_remaining.hours": "{number, plural, one {Zbývá # hodina} few {Zbývají # hodiny} many {Zbývá # hodiny} other {Zbývá # hodin}}",
"time_remaining.minutes": "{number, plural, one {Zbývá # minuta} few {Zbývají # minuty} many {Zbývá # minuty} other {Zbývá # minut}}",
"time_remaining.days": "{number, plural, one {Zbývá # den} few {Zbývají # dny} many {Zbývá # dní} other {Zbývá # dní}}",
"time_remaining.hours": "{number, plural, one {Zbývá # hodina} few {Zbývají # hodiny} many {Zbývá # hodin} other {Zbývá # hodin}}",
"time_remaining.minutes": "{number, plural, one {Zbývá # minuta} few {Zbývají # minuty} many {Zbývá # minut} other {Zbývá # minut}}",
"time_remaining.moments": "Zbývá několik sekund",
"time_remaining.seconds": "{number, plural, one {Zbývá # sekunda} few {Zbývají # sekundy} many {Zbývá # sekundy} other {Zbývá # sekund}}",
"time_remaining.seconds": "{number, plural, one {Zbývá # sekunda} few {Zbývají # sekundy} many {Zbývá # sekund} other {Zbývá # sekund}}",
"trends.count_by_accounts": "{count} {rawCount, plural, one {člověk} few {lidé} many {lidí} other {lidí}} hovoří",
"trends.trending_now": "Aktuální trendy",
"ui.beforeunload": "Váš koncept se ztratí, pokud Mastodon opustíte.",
"upload_area.title": "Přetažením nahrajete",
"upload_button.label": "Přidat média (JPEG, PNG, GIF, WebM, MP4, MOV)",
"ui.beforeunload": "Pokud Mastodon opustíte, váš koncept se ztratí.",
"upload_area.title": "Nahrajte přetažením",
"upload_button.label": "Přidat média ({formats})",
"upload_error.limit": "Byl překročen limit nahraných souborů.",
"upload_error.poll": "Nahrávání souborů není povoleno u anket.",
"upload_error.poll": "U anket není nahrávání souborů povoleno.",
"upload_form.audio_description": "Popis pro sluchově postižené",
"upload_form.description": "Popis pro zrakově postižené",
"upload_form.edit": "Upravit",
"upload_form.undo": "Smazat",
"upload_form.video_description": "Popis pro sluchově či zrakově postižené",
"upload_modal.analyzing_picture": "Analyzuji obrázek…",
"upload_modal.apply": "Použít",
"upload_modal.description_placeholder": "Příliš žluťoučký kůň úpěl ďábelské ódy",
"upload_modal.detect_text": "Detekovat text z obrázku",
"upload_modal.edit_media": "Upravit média",
"upload_modal.hint": "Kliknutím na nebo přetáhnutím kruhu na náhledu vyberte bod soustředění, který bude vždy zobrazen na všech náhledech.",
"upload_modal.hint": "Kliknutím na nebo přetáhnutím kruhu na náhledu vyberte oblast, která bude na všech náhledech vždy zobrazen.",
"upload_modal.preview_label": "Náhled ({ratio})",
"upload_progress.label": "Nahrávám…",
"upload_progress.label": "Nahrává…",
"video.close": "Zavřít video",
"video.exit_fullscreen": "Ukončit celou obrazovku",
"video.download": "Stáhnout soubor",
"video.exit_fullscreen": "Ukončit režim celé obrazovky",
"video.expand": "Otevřít video",
"video.fullscreen": "Celá obrazovka",
"video.hide": "Skrýt video",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Ychwanegu neu Dileu o'r rhestrau",
"account.badges.bot": "Bot",
"account.badges.group": "Grŵp",
"account.block": "Blocio @{name}",
"account.block_domain": "Cuddio popeth rhag {domain}",
"account.blocked": "Blociwyd",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Cyfradd gyfyngedig",
"alert.unexpected.message": "Digwyddodd gwall annisgwyl.",
"alert.unexpected.title": "Wps!",
"announcement.announcement": "Cyhoeddiad",
"autosuggest_hashtag.per_week": "{count} yr wythnos",
"boost_modal.combo": "Mae modd gwasgu {combo} er mwyn sgipio hyn tro nesa",
"bundle_column_error.body": "Aeth rhywbeth o'i le tra'n llwytho'r elfen hon.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Aeth rhywbeth o'i le tra'n llwytho'r elfen hon.",
"bundle_modal_error.retry": "Ceiswich eto",
"column.blocks": "Defnyddwyr a flociwyd",
"column.bookmarks": "Tudalnodau",
"column.community": "Ffrwd lleol",
"column.direct": "Negeseuon preifat",
"column.directory": "Pori proffiliau",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Cyfnod pleidlais",
"compose_form.poll.option_placeholder": "Dewisiad {number}",
"compose_form.poll.remove_option": "Tynnu'r dewisiad",
"compose_form.poll.switch_to_multiple": "Newid pleidlais i adael mwy nag un dewis",
"compose_form.poll.switch_to_single": "Newid pleidlais i gyfyngu i un dewis",
"compose_form.publish": "Tŵt",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Marcio cyfryngau fel eu bod yn sensitif",
@ -103,7 +108,7 @@
"confirmations.logout.confirm": "Allgofnodi",
"confirmations.logout.message": "Ydych chi'n siŵr eich bod am allgofnodi?",
"confirmations.mute.confirm": "Tawelu",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.explanation": "Bydd hyn yn cuddio pyst oddi wrthynt a physt sydd yn sôn amdanynt, ond bydd hyn dal yn gadael iddyn nhw gweld eich pyst a'ch dilyn.",
"confirmations.mute.message": "Ydych chi'n sicr eich bod am ddistewi {name}?",
"confirmations.redraft.confirm": "Dileu & ailddrafftio",
"confirmations.redraft.message": "Ydych chi'n siwr eich bod eisiau dileu y tŵt hwn a'i ailddrafftio? Bydd ffefrynnau a bwstiau'n cael ei colli, a bydd ymatebion i'r tŵt gwreiddiol yn cael eu hamddifadu.",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Dim tŵtiau fama!",
"empty_column.account_unavailable": "Proffil ddim ar gael",
"empty_column.blocks": "Nid ydych wedi blocio unrhyw ddefnyddwyr eto.",
"empty_column.bookmarked_statuses": "Nid oes gennych unrhyw dwtiau tudalnodiedig eto. Pan y byddwch yn tudalnodi un, mi fydd yn ymddangos yma.",
"empty_column.community": "Mae'r ffrwd lleol yn wag. Ysgrifenwch rhywbeth yn gyhoeddus i gael dechrau arni!",
"empty_column.direct": "Nid oes gennych unrhyw negeseuon preifat eto. Pan y byddwch yn anfon neu derbyn un, mi fydd yn ymddangos yma.",
"empty_column.domain_blocks": "Nid oes yna unrhyw barthau cuddiedig eto.",
@ -152,10 +158,10 @@
"empty_column.mutes": "Nid ydych wedi tawelu unrhyw ddefnyddwyr eto.",
"empty_column.notifications": "Nid oes gennych unrhyw hysbysiadau eto. Rhyngweithiwch ac eraill i ddechrau'r sgwrs.",
"empty_column.public": "Does dim byd yma! Ysgrifennwch rhywbeth yn gyhoeddus, neu dilynwch ddefnyddwyr o achosion eraill i'w lenwi",
"error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
"error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.report_issue": "Report issue",
"error.unexpected_crash.explanation": "Oherwydd gwall yn ein cod neu oherwydd problem cysondeb porwr, nid oedd y dudalen hon gallu cael ei dangos yn gywir.",
"error.unexpected_crash.next_steps": "Ceisiwch ail-lwytho y dudalen. Os nad yw hyn yn eich helpu, efallai gallech defnyddio Mastodon trwy borwr neu ap brodorol gwahanol.",
"errors.unexpected_crash.copy_stacktrace": "Copïo'r olrhain stac i'r clipfwrdd",
"errors.unexpected_crash.report_issue": "Rhoi gwybod am broblem",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
"federation.federated.short": "Federated",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Syml",
"home.column_settings.show_reblogs": "Dangos bŵstiau",
"home.column_settings.show_replies": "Dangos ymatebion",
"home.hide_announcements": "Cuddio cyhoeddiadau",
"home.show_announcements": "Dangos cyhoeddiadau",
"intervals.full.days": "{number, plural, one {# ddydd} other {# o ddyddiau}}",
"intervals.full.hours": "{number, plural, one {# awr} other {# o oriau}}",
"intervals.full.minutes": "{number, plural, one {# funud} other {# o funudau}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "i agor rhestr defnyddwyr a dawelwyd",
"keyboard_shortcuts.my_profile": "i agor eich proffil",
"keyboard_shortcuts.notifications": "i agor colofn hysbysiadau",
"keyboard_shortcuts.open_media": "i agor cyfryngau",
"keyboard_shortcuts.pinned": "i agor rhestr tŵtiau wedi'i pinio",
"keyboard_shortcuts.profile": "i agor proffil yr awdur",
"keyboard_shortcuts.reply": "i ateb",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Cuddio hysbysiadau rhag y defnyddiwr hwn?",
"navigation_bar.apps": "Apiau symudol",
"navigation_bar.blocks": "Defnyddwyr wedi eu blocio",
"navigation_bar.bookmarks": "Tudalnodau",
"navigation_bar.community_timeline": "Ffrwd leol",
"navigation_bar.compose": "Cyfansoddi tŵt newydd",
"navigation_bar.direct": "Negeseuon preifat",
@ -278,7 +288,9 @@
"navigation_bar.security": "Diogelwch",
"notification.favourite": "hoffodd {name} eich tŵt",
"notification.follow": "dilynodd {name} chi",
"notification.follow_request": "Mae {name} wedi gwneud cais i'ch dilyn",
"notification.mention": "Soniodd {name} amdanoch chi",
"notification.own_poll": "Mae eich pôl wedi diweddu",
"notification.poll": "Mae pleidlais rydych wedi pleidleisio ynddi wedi dod i ben",
"notification.reblog": "Hysbysebodd {name} eich tŵt",
"notifications.clear": "Clirio hysbysiadau",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Bar hidlo",
"notifications.column_settings.filter_bar.show": "Dangos",
"notifications.column_settings.follow": "Dilynwyr newydd:",
"notifications.column_settings.follow_request": "Ceisiadau dilyn newydd:",
"notifications.column_settings.mention": "Crybwylliadau:",
"notifications.column_settings.poll": "Canlyniadau pleidlais:",
"notifications.column_settings.push": "Hysbysiadau gwthiadwy",
@ -304,10 +317,10 @@
"notifications.group": "{count} o hysbysiadau",
"poll.closed": "Ar gau",
"poll.refresh": "Adnewyddu",
"poll.total_people": "{count, plural, one {# person} other {# people}}",
"poll.total_people": "{count, plural, one {# berson} other {# o bobl}}",
"poll.total_votes": "{count, plural, one {# bleidlais} other {# o bleidleisiau}}",
"poll.vote": "Pleidleisio",
"poll.voted": "You voted for this answer",
"poll.voted": "Pleidleisioch chi am yr ateb hon",
"poll_button.add_poll": "Ychwanegu pleidlais",
"poll_button.remove_poll": "Tynnu pleidlais",
"privacy.change": "Addasu preifatrwdd y tŵt",
@ -319,7 +332,7 @@
"privacy.public.short": "Cyhoeddus",
"privacy.unlisted.long": "Peidio a chyhoeddi i ffrydiau cyhoeddus",
"privacy.unlisted.short": "Heb ei restru",
"refresh": "Refresh",
"refresh": "Adnewyddu",
"regeneration_indicator.label": "Llwytho…",
"regeneration_indicator.sublabel": "Mae eich ffrwd cartref yn cael ei baratoi!",
"relative_time.days": "{number}dydd",
@ -327,6 +340,7 @@
"relative_time.just_now": "nawr",
"relative_time.minutes": "{number}munud",
"relative_time.seconds": "{number}eiliad",
"relative_time.today": "heddiw",
"reply_indicator.cancel": "Canslo",
"report.forward": "Ymlaen i {target}",
"report.forward_hint": "Mae'r cyfrif o weinydd arall. Anfon copi anhysbys o'r adroddiad yno hefyd?",
@ -349,6 +363,7 @@
"status.admin_account": "Agor rhyngwyneb goruwchwylio ar gyfer @{name}",
"status.admin_status": "Agor y tŵt yn y rhyngwyneb goruwchwylio",
"status.block": "Blocio @{name}",
"status.bookmark": "Tudalnodi",
"status.cancel_reblog_private": "Dadfŵstio",
"status.cannot_reblog": "Ni ellir sbarduno'r tŵt hwn",
"status.copy": "Copïo cysylltiad i'r tŵt",
@ -374,6 +389,7 @@
"status.reblogged_by": "Bŵstio {name}",
"status.reblogs.empty": "Does neb wedi bŵstio'r tŵt yma eto. Pan y bydd rhywun yn gwneud, byddent yn ymddangos yma.",
"status.redraft": "Dileu & ailddrafftio",
"status.remove_bookmark": "Tynnu'r tudalnod",
"status.reply": "Ateb",
"status.replyAll": "Ateb i edefyn",
"status.report": "Adrodd @{name}",
@ -406,9 +422,11 @@
"upload_button.label": "Ychwanegwch gyfryngau (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Wedi mynd heibio'r uchafswm terfyn uwchlwytho.",
"upload_error.poll": "Nid oes modd uwchlwytho ffeiliau â phleidleisiau.",
"upload_form.audio_description": "Disgrifio ar gyfer pobl sydd â cholled clyw",
"upload_form.description": "Disgrifio i'r rheini a nam ar ei golwg",
"upload_form.edit": "Golygu",
"upload_form.undo": "Dileu",
"upload_form.video_description": "Disgrifio ar gyfer pobl sydd â cholled clyw neu amhariad golwg",
"upload_modal.analyzing_picture": "Dadansoddi llun…",
"upload_modal.apply": "Gweithredu",
"upload_modal.description_placeholder": "Mae ei phen bach llawn jocs, 'run peth a fy nghot golff, rhai dyddiau",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Rhagolwg ({ratio})",
"upload_progress.label": "Uwchlwytho...",
"video.close": "Cau fideo",
"video.download": "Lawrlwytho ffeil",
"video.exit_fullscreen": "Gadael sgrîn llawn",
"video.expand": "Ymestyn fideo",
"video.fullscreen": "Sgrîn llawn",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Tilføj eller fjern fra lister",
"account.badges.bot": "Robot",
"account.badges.group": "Group",
"account.block": "Bloker @{name}",
"account.block_domain": "Skjul alt fra {domain}",
"account.blocked": "Blokeret",
@ -39,9 +40,10 @@
"account.unmute": "Fjern dæmpningen af @{name}",
"account.unmute_notifications": "Fjern dæmpningen af notifikationer fra @{name}",
"alert.rate_limited.message": "Prøv venligst igen efter {retry_time, time, medium}.",
"alert.rate_limited.title": "Rate limited",
"alert.rate_limited.title": "Gradsbegrænset",
"alert.unexpected.message": "Der opstod en uventet fejl.",
"alert.unexpected.title": "Ups!",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} per uge",
"boost_modal.combo": "Du kan trykke {combo} for at springe dette over næste gang",
"bundle_column_error.body": "Noget gik galt under indlæsningen af dette komponent.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Noget gik galt under indlæsningen af dette komponent.",
"bundle_modal_error.retry": "Prøv igen",
"column.blocks": "Blokerede brugere",
"column.bookmarks": "Bogmærker",
"column.community": "Lokal tidslinje",
"column.direct": "Direkte beskeder",
"column.directory": "Gennemse profiler",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Afstemningens varighed",
"compose_form.poll.option_placeholder": "Valgmulighed {number}",
"compose_form.poll.remove_option": "Fjern denne valgmulighed",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Trut",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Markér medie som følsomt",
@ -103,7 +108,7 @@
"confirmations.logout.confirm": "Log ud",
"confirmations.logout.message": "Er du sikker på du vil logge ud?",
"confirmations.mute.confirm": "Dæmp",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.explanation": "Dette vil skjule indlæg fra dem, samt andre indlæg der omtaler dem, men de vil stadig være i stand til at se dine indlæg og følge dig.",
"confirmations.mute.message": "Er du sikker på, du vil dæmpe {name}?",
"confirmations.redraft.confirm": "Slet & omskriv",
"confirmations.redraft.message": "Er du sikker på, du vil slette denne status og omskrive den? Favoritter og fremhævelser vil gå tabt og svar til det oprindelige opslag vil blive forældreløse.",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Ingen bidrag her!",
"empty_column.account_unavailable": "Profil utilgængelig",
"empty_column.blocks": "Du har ikke blokeret nogen endnu.",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "Den lokale tidslinje er tom. Skriv noget offentligt for at starte lavinen!",
"empty_column.direct": "Du har endnu ingen direkte beskeder. Når du sender eller modtager en, vil den vises her.",
"empty_column.domain_blocks": "Der er endnu ikke nogle skjulte domæner.",
@ -152,10 +158,10 @@
"empty_column.mutes": "Du har endnu ikke dæmpet nogen som helst bruger.",
"empty_column.notifications": "Du har endnu ingen notifikationer. Tag ud og bland dig med folkemængden for at starte samtalen.",
"empty_column.public": "Der er ikke noget at se her! Skriv noget offentligt eller start ud med manuelt at følge brugere fra andre server for at udfylde tomrummet",
"error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
"error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.report_issue": "Report issue",
"error.unexpected_crash.explanation": "På grund af en fejl i vores kode, eller en browser kompatibilitetsfejl, så kunne siden ikke vises korrekt.",
"error.unexpected_crash.next_steps": "Prøv at genindlæs siden. Hvis dette ikke hjælper, så forsøg venligst, at tilgå Mastodon via en anden browser eller app.",
"errors.unexpected_crash.copy_stacktrace": "Kopiér stack trace til udklipsholderen",
"errors.unexpected_crash.report_issue": "Rapportér problem",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
"federation.federated.short": "Federated",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Grundlæggende",
"home.column_settings.show_reblogs": "Vis fremhævelser",
"home.column_settings.show_replies": "Vis svar",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# dag} other {# dage}}",
"intervals.full.hours": "{number, plural, one {# time} other {# timer}}",
"intervals.full.minutes": "{number, plural, one {# minut} other {# minutter}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "for at åbne listen over dæmpede brugere",
"keyboard_shortcuts.my_profile": "for at åbne din profil",
"keyboard_shortcuts.notifications": "for at åbne notifikations kolonnen",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "for at åbne listen over fastgjorte trut",
"keyboard_shortcuts.profile": "til profil af åben forfatter",
"keyboard_shortcuts.reply": "for at svare",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Skjul notifikationer fra denne bruger?",
"navigation_bar.apps": "Mobil apps",
"navigation_bar.blocks": "Blokerede brugere",
"navigation_bar.bookmarks": "Bogmærker",
"navigation_bar.community_timeline": "Lokal tidslinje",
"navigation_bar.compose": "Skriv nyt trut",
"navigation_bar.direct": "Direkte beskeder",
@ -278,7 +288,9 @@
"navigation_bar.security": "Sikkerhed",
"notification.favourite": "{name} favoriserede din status",
"notification.follow": "{name} fulgte dig",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} nævnte dig",
"notification.own_poll": "Din afstemning er afsluttet",
"notification.poll": "En afstemning, du stemte i, er slut",
"notification.reblog": "{name} boostede din status",
"notifications.clear": "Ryd notifikationer",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Hurtigfilter",
"notifications.column_settings.filter_bar.show": "Vis",
"notifications.column_settings.follow": "Nye følgere:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "Statusser der nævner dig:",
"notifications.column_settings.poll": "Afstemningsresultat:",
"notifications.column_settings.push": "Pushnotifikationer",
@ -304,10 +317,10 @@
"notifications.group": "{count} notifikationer",
"poll.closed": "Lukket",
"poll.refresh": "Opdatér",
"poll.total_people": "{count, plural, one {# person} other {# people}}",
"poll.total_people": "{count, plural, one {# person} other {# personer}}",
"poll.total_votes": "{count, plural, one {# stemme} other {# stemmer}}",
"poll.vote": "Stem",
"poll.voted": "You voted for this answer",
"poll.voted": "Du stemte for denne valgmulighed",
"poll_button.add_poll": "Tilføj en afstemning",
"poll_button.remove_poll": "Fjern afstemning",
"privacy.change": "Skift status visningsindstillinger",
@ -319,7 +332,7 @@
"privacy.public.short": "Offentligt",
"privacy.unlisted.long": "Udgiv ikke på offentlige tidslinjer",
"privacy.unlisted.short": "Ikke listet",
"refresh": "Refresh",
"refresh": "Opdatér",
"regeneration_indicator.label": "Indlæser…",
"regeneration_indicator.sublabel": "Din startside er ved at blive forberedt!",
"relative_time.days": "{number}d",
@ -327,6 +340,7 @@
"relative_time.just_now": "nu",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "today",
"reply_indicator.cancel": "Annuller",
"report.forward": "Videresend til {target}",
"report.forward_hint": "Kontoen er fra en anden server. Vil du også sende en anonym kopi af anmeldelsen dertil?",
@ -349,6 +363,7 @@
"status.admin_account": "Åben modereringsvisning for @{name}",
"status.admin_status": "Åben denne status i modereringsvisningen",
"status.block": "Bloker @{name}",
"status.bookmark": "Bogmærke",
"status.cancel_reblog_private": "Fjern boost",
"status.cannot_reblog": "Denne post kan ikke boostes",
"status.copy": "Kopiér link til status",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name} boostede",
"status.reblogs.empty": "Der er endnu ingen der har boostet dette trut. Når der er nogen der gør, vil det blive vist her.",
"status.redraft": "Slet og omskriv",
"status.remove_bookmark": "Fjern bogmærke",
"status.reply": "Besvar",
"status.replyAll": "Besvar samtale",
"status.report": "Anmeld @{name}",
@ -406,9 +422,11 @@
"upload_button.label": "Tilføj medie (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Uploadgrænse overskredet.",
"upload_error.poll": "Filupload ikke tilladt sammen med afstemninger.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Beskriv for svagtseende",
"upload_form.edit": "Redigér",
"upload_form.undo": "Slet",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analyserer billede…",
"upload_modal.apply": "Anvend",
"upload_modal.description_placeholder": "En hurtig brun ræv hopper over den dovne hund",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Forhåndsvisning ({ratio})",
"upload_progress.label": "Uploader...",
"video.close": "Luk video",
"video.download": "Hent fil",
"video.exit_fullscreen": "Forlad fuldskærm",
"video.expand": "Udvid video",
"video.fullscreen": "Fuldskærm",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Hinzufügen oder Entfernen von Listen",
"account.badges.bot": "Bot",
"account.badges.group": "Gruppe",
"account.block": "@{name} blockieren",
"account.block_domain": "Alles von {domain} verstecken",
"account.blocked": "Blockiert",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Anfragelimit überschritten",
"alert.unexpected.message": "Ein unerwarteter Fehler ist aufgetreten.",
"alert.unexpected.title": "Hoppla!",
"announcement.announcement": "Ankündigung",
"autosuggest_hashtag.per_week": "{count} pro Woche",
"boost_modal.combo": "Drücke {combo}, um dieses Fenster zu überspringen",
"bundle_column_error.body": "Etwas ist beim Laden schiefgelaufen.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Etwas ist beim Laden schiefgelaufen.",
"bundle_modal_error.retry": "Erneut versuchen",
"column.blocks": "Blockierte Profile",
"column.bookmarks": "Lesezeichen",
"column.community": "Lokale Zeitleiste",
"column.direct": "Direktnachrichten",
"column.directory": "Profile durchsuchen",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Umfragedauer",
"compose_form.poll.option_placeholder": "Wahl {number}",
"compose_form.poll.remove_option": "Wahl entfernen",
"compose_form.poll.switch_to_multiple": "Umfrage ändern, um mehrere Optionen zu erlauben",
"compose_form.poll.switch_to_single": "Umfrage ändern, um eine einzige Wahl zu ermöglichen",
"compose_form.publish": "Tröt",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Medien als heikel markieren",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Keine Beiträge!",
"empty_column.account_unavailable": "Konto nicht verfügbar",
"empty_column.blocks": "Du hast keine Profile blockiert.",
"empty_column.bookmarked_statuses": "Du hast bis jetzt keine Beiträge als Toots gespeichert. Wenn du einen Beitrag als Toot speicherst, wird er hier erscheinen.",
"empty_column.community": "Die lokale Zeitleiste ist leer. Schreibe einen öffentlichen Beitrag, um den Ball ins Rollen zu bringen!",
"empty_column.direct": "Du hast noch keine Direktnachrichten erhalten. Wenn du eine sendest oder empfängst, wird sie hier zu sehen sein.",
"empty_column.domain_blocks": "Es ist noch keine versteckten Domains.",
@ -169,7 +175,7 @@
"getting_started.heading": "Erste Schritte",
"getting_started.invite": "Leute einladen",
"getting_started.open_source_notice": "Mastodon ist quelloffene Software. Du kannst auf GitHub unter {github} dazu beitragen oder Probleme melden.",
"getting_started.security": "Sicherheit",
"getting_started.security": "Konto & Sicherheit",
"getting_started.terms": "Nutzungsbedingungen",
"hashtag.column_header.tag_mode.all": "und {additional}",
"hashtag.column_header.tag_mode.any": "oder {additional}",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Einfach",
"home.column_settings.show_reblogs": "Geteilte Beiträge anzeigen",
"home.column_settings.show_replies": "Antworten anzeigen",
"home.hide_announcements": "Verstecke Ankündigungen",
"home.show_announcements": "Zeige Ankündigungen",
"intervals.full.days": "{number, plural, one {# Tag} other {# Tage}}",
"intervals.full.hours": "{number, plural, one {# Stunde} other {# Stunden}}",
"intervals.full.minutes": "{number, plural, one {# Minute} other {# Minuten}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "Liste stummgeschalteter Profile öffnen",
"keyboard_shortcuts.my_profile": "Dein Profil öffnen",
"keyboard_shortcuts.notifications": "Benachrichtigungsspalte öffnen",
"keyboard_shortcuts.open_media": "um Medien zu öffnen",
"keyboard_shortcuts.pinned": "Liste angehefteter Beiträge öffnen",
"keyboard_shortcuts.profile": "Profil des Autors öffnen",
"keyboard_shortcuts.reply": "antworten",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Benachrichtigungen von diesem Account verbergen?",
"navigation_bar.apps": "Mobile Apps",
"navigation_bar.blocks": "Blockierte Profile",
"navigation_bar.bookmarks": "Lesezeichen",
"navigation_bar.community_timeline": "Lokale Zeitleiste",
"navigation_bar.compose": "Neuen Beitrag verfassen",
"navigation_bar.direct": "Direktnachrichten",
@ -278,7 +288,9 @@
"navigation_bar.security": "Sicherheit",
"notification.favourite": "{name} hat deinen Beitrag favorisiert",
"notification.follow": "{name} folgt dir",
"notification.follow_request": "{name} möchte dir folgen",
"notification.mention": "{name} hat dich erwähnt",
"notification.own_poll": "Deine Umfrage ist beendet",
"notification.poll": "Eine Umfrage in der du abgestimmt hast ist vorbei",
"notification.reblog": "{name} hat deinen Beitrag geteilt",
"notifications.clear": "Mitteilungen löschen",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Schnellfilterleiste",
"notifications.column_settings.filter_bar.show": "Anzeigen",
"notifications.column_settings.follow": "Neue Folgende:",
"notifications.column_settings.follow_request": "Neue Folge-Anfragen:",
"notifications.column_settings.mention": "Erwähnungen:",
"notifications.column_settings.poll": "Ergebnisse von Umfragen:",
"notifications.column_settings.push": "Push-Benachrichtigungen",
@ -327,6 +340,7 @@
"relative_time.just_now": "jetzt",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "heute",
"reply_indicator.cancel": "Abbrechen",
"report.forward": "An {target} weiterleiten",
"report.forward_hint": "Dieses Konto ist von einem anderen Server. Soll eine anonymisierte Kopie des Berichts auch dorthin geschickt werden?",
@ -349,6 +363,7 @@
"status.admin_account": "Öffne Moderationsoberfläche für @{name}",
"status.admin_status": "Öffne Beitrag in der Moderationsoberfläche",
"status.block": "Blockiere @{name}",
"status.bookmark": "Lesezeichen",
"status.cancel_reblog_private": "Nicht mehr teilen",
"status.cannot_reblog": "Dieser Beitrag kann nicht geteilt werden",
"status.copy": "Kopiere Link zum Beitrag",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name} teilte",
"status.reblogs.empty": "Diesen Beitrag hat noch niemand geteilt. Sobald es jemand tut, wird diese Person hier angezeigt.",
"status.redraft": "Löschen und neu erstellen",
"status.remove_bookmark": "Lesezeichen entfernen",
"status.reply": "Antworten",
"status.replyAll": "Allen antworten",
"status.report": "@{name} melden",
@ -406,18 +422,21 @@
"upload_button.label": "Mediendatei hinzufügen ({formats})",
"upload_error.limit": "Dateiupload-Limit erreicht.",
"upload_error.poll": "Dateiuploads sind in Kombination mit Umfragen nicht erlaubt.",
"upload_form.audio_description": "Beschreibe die Audiodatei für Menschen mit Hörschädigungen",
"upload_form.description": "Für Menschen mit Sehbehinderung beschreiben",
"upload_form.edit": "Bearbeiten",
"upload_form.undo": "Löschen",
"upload_form.video_description": "Beschreibe das Video für Menschen mit einer Hör- oder Sehbehinderung",
"upload_modal.analyzing_picture": "Analysiere Bild…",
"upload_modal.apply": "Übernehmen",
"upload_modal.description_placeholder": "Franz jagt im komplett verwahrlosten Taxi quer durch Bayern",
"upload_modal.description_placeholder": "Die heiße Zypernsonne quälte Max und Victoria ja böse auf dem Weg bis zur Küste",
"upload_modal.detect_text": "Text aus Bild erkennen",
"upload_modal.edit_media": "Medien bearbeiten",
"upload_modal.hint": "Klicke oder ziehe den Kreis auf die Vorschau, um den Brennpunkt auszuwählen, der immer auf allen Vorschaubilder angezeigt wird.",
"upload_modal.preview_label": "Vorschau ({ratio})",
"upload_progress.label": "Wird hochgeladen …",
"video.close": "Video schließen",
"video.download": "Datei herunterladen",
"video.exit_fullscreen": "Vollbild verlassen",
"video.expand": "Video vergrößern",
"video.fullscreen": "Vollbild",

View File

@ -293,6 +293,10 @@
},
{
"descriptors": [
{
"defaultMessage": "today",
"id": "relative_time.today"
},
{
"defaultMessage": "now",
"id": "relative_time.just_now"
@ -402,6 +406,14 @@
"defaultMessage": "Favourite",
"id": "status.favourite"
},
{
"defaultMessage": "Bookmark",
"id": "status.bookmark"
},
{
"defaultMessage": "Remove bookmark",
"id": "status.remove_bookmark"
},
{
"defaultMessage": "Expand this status",
"id": "status.open"
@ -441,6 +453,22 @@
{
"defaultMessage": "Copy link to status",
"id": "status.copy"
},
{
"defaultMessage": "Hide everything from {domain}",
"id": "account.block_domain"
},
{
"defaultMessage": "Unhide {domain}",
"id": "account.unblock_domain"
},
{
"defaultMessage": "Unmute @{name}",
"id": "account.unmute"
},
{
"defaultMessage": "Unblock @{name}",
"id": "account.unblock"
}
],
"path": "app/javascript/mastodon/components/status_action_bar.json"
@ -534,6 +562,14 @@
{
"defaultMessage": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"id": "confirmations.reply.message"
},
{
"defaultMessage": "Hide entire domain",
"id": "confirmations.domain_block.confirm"
},
{
"defaultMessage": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.",
"id": "confirmations.domain_block.message"
}
],
"path": "app/javascript/mastodon/containers/status_container.json"
@ -748,6 +784,10 @@
"defaultMessage": "Bot",
"id": "account.badges.bot"
},
{
"defaultMessage": "Group",
"id": "account.badges.group"
},
{
"defaultMessage": "Posts",
"id": "account.posts"
@ -780,6 +820,10 @@
{
"defaultMessage": "Unmute sound",
"id": "video.unmute"
},
{
"defaultMessage": "Download file",
"id": "video.download"
}
],
"path": "app/javascript/mastodon/features/audio/index.json"
@ -797,6 +841,19 @@
],
"path": "app/javascript/mastodon/features/blocks/index.json"
},
{
"descriptors": [
{
"defaultMessage": "Bookmarks",
"id": "column.bookmarks"
},
{
"defaultMessage": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"id": "empty_column.bookmarked_statuses"
}
],
"path": "app/javascript/mastodon/features/bookmarked_statuses/index.json"
},
{
"descriptors": [
{
@ -1015,6 +1072,14 @@
"defaultMessage": "Poll duration",
"id": "compose_form.poll.duration"
},
{
"defaultMessage": "Change poll to allow multiple choices",
"id": "compose_form.poll.switch_to_multiple"
},
{
"defaultMessage": "Change poll to allow for a single choice",
"id": "compose_form.poll.switch_to_single"
},
{
"defaultMessage": "{number, plural, one {# minute} other {# minutes}}",
"id": "intervals.full.minutes"
@ -1375,6 +1440,10 @@
"defaultMessage": "Unmute @{name}",
"id": "account.unmute"
},
{
"defaultMessage": "Unfollow",
"id": "confirmations.unfollow.confirm"
},
{
"defaultMessage": "Are you sure you want to unfollow {name}?",
"id": "confirmations.unfollow.message"
@ -1518,6 +1587,27 @@
],
"path": "app/javascript/mastodon/features/following/index.json"
},
{
"descriptors": [
{
"defaultMessage": "Close",
"id": "lightbox.close"
},
{
"defaultMessage": "Previous",
"id": "lightbox.previous"
},
{
"defaultMessage": "Next",
"id": "lightbox.next"
},
{
"defaultMessage": "Announcement",
"id": "announcement.announcement"
}
],
"path": "app/javascript/mastodon/features/getting_started/components/announcements.json"
},
{
"descriptors": [
{
@ -1553,6 +1643,10 @@
"defaultMessage": "Direct messages",
"id": "navigation_bar.direct"
},
{
"defaultMessage": "Bookmarks",
"id": "navigation_bar.bookmarks"
},
{
"defaultMessage": "Preferences",
"id": "navigation_bar.preferences"
@ -1681,6 +1775,14 @@
"defaultMessage": "Home",
"id": "column.home"
},
{
"defaultMessage": "Show announcements",
"id": "home.show_announcements"
},
{
"defaultMessage": "Hide announcements",
"id": "home.hide_announcements"
},
{
"defaultMessage": "Your home timeline is empty! Visit {public} or use search to get started and meet other users.",
"id": "empty_column.home"
@ -1803,6 +1905,10 @@
"defaultMessage": "to open status",
"id": "keyboard_shortcuts.enter"
},
{
"defaultMessage": "to open media",
"id": "keyboard_shortcuts.open_media"
},
{
"defaultMessage": "to show/hide text behind CW",
"id": "keyboard_shortcuts.toggle_hidden"
@ -2053,6 +2159,10 @@
"defaultMessage": "New followers:",
"id": "notifications.column_settings.follow"
},
{
"defaultMessage": "New follow requests:",
"id": "notifications.column_settings.follow_request"
},
{
"defaultMessage": "Favourites:",
"id": "notifications.column_settings.favourite"
@ -2103,21 +2213,42 @@
},
{
"descriptors": [
{
"defaultMessage": "Authorize",
"id": "follow_request.authorize"
},
{
"defaultMessage": "Reject",
"id": "follow_request.reject"
}
],
"path": "app/javascript/mastodon/features/notifications/components/follow_request.json"
},
{
"descriptors": [
{
"defaultMessage": "{name} favourited your status",
"id": "notification.favourite"
},
{
"defaultMessage": "{name} followed you",
"id": "notification.follow"
},
{
"defaultMessage": "{name} favourited your status",
"id": "notification.favourite"
"defaultMessage": "Your poll has ended",
"id": "notification.own_poll"
},
{
"defaultMessage": "A poll you have voted in has ended",
"id": "notification.poll"
},
{
"defaultMessage": "{name} boosted your status",
"id": "notification.reblog"
},
{
"defaultMessage": "A poll you have voted in has ended",
"id": "notification.poll"
"defaultMessage": "{name} has requested to follow you",
"id": "notification.follow_request"
}
],
"path": "app/javascript/mastodon/features/notifications/components/notification.json"
@ -2225,6 +2356,14 @@
"defaultMessage": "Favourite",
"id": "status.favourite"
},
{
"defaultMessage": "Bookmark",
"id": "status.bookmark"
},
{
"defaultMessage": "More",
"id": "status.more"
},
{
"defaultMessage": "Mute @{name}",
"id": "status.mute"
@ -2272,6 +2411,22 @@
{
"defaultMessage": "Copy link to status",
"id": "status.copy"
},
{
"defaultMessage": "Hide everything from {domain}",
"id": "account.block_domain"
},
{
"defaultMessage": "Unhide {domain}",
"id": "account.unblock_domain"
},
{
"defaultMessage": "Unmute @{name}",
"id": "account.unmute"
},
{
"defaultMessage": "Unblock @{name}",
"id": "account.unblock"
}
],
"path": "app/javascript/mastodon/features/status/components/action_bar.json"
@ -2351,6 +2506,14 @@
{
"defaultMessage": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"id": "confirmations.reply.message"
},
{
"defaultMessage": "Hide entire domain",
"id": "confirmations.domain_block.confirm"
},
{
"defaultMessage": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.",
"id": "confirmations.domain_block.message"
}
],
"path": "app/javascript/mastodon/features/status/index.json"
@ -2489,6 +2652,18 @@
"defaultMessage": "A quick brown fox jumps over the lazy dog",
"id": "upload_modal.description_placeholder"
},
{
"defaultMessage": "Describe for people with hearing loss",
"id": "upload_form.audio_description"
},
{
"defaultMessage": "Describe for people with hearing loss or visual impairment",
"id": "upload_form.video_description"
},
{
"defaultMessage": "Describe for the visually impaired",
"id": "upload_form.description"
},
{
"defaultMessage": "Edit media",
"id": "upload_modal.edit_media"
@ -2497,10 +2672,6 @@
"defaultMessage": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
"id": "upload_modal.hint"
},
{
"defaultMessage": "Describe for the visually impaired",
"id": "upload_form.description"
},
{
"defaultMessage": "Analyzing picture…",
"id": "upload_modal.analyzing_picture"
@ -2650,6 +2821,10 @@
"defaultMessage": "Favourites",
"id": "navigation_bar.favourites"
},
{
"defaultMessage": "Bookmarks",
"id": "navigation_bar.bookmarks"
},
{
"defaultMessage": "Lists",
"id": "navigation_bar.lists"
@ -2792,6 +2967,10 @@
"defaultMessage": "Exit full screen",
"id": "video.exit_fullscreen"
},
{
"defaultMessage": "Download file",
"id": "video.download"
},
{
"defaultMessage": "Sensitive content",
"id": "status.sensitive_warning"

View File

@ -1,8 +1,9 @@
{
"account.add_or_remove_from_list": "Προσθήκη ή Αφαίρεση από λίστες",
"account.badges.bot": "Μποτ",
"account.badges.group": "Ομάδα",
"account.block": "Αποκλεισμός @{name}",
"account.block_domain": "Απόκρυψε τα πάντα από το {domain}",
"account.block_domain": "Απόκρυψη όλων από {domain}",
"account.blocked": "Αποκλεισμένος/η",
"account.cancel_follow_request": "Ακύρωση αιτήματος παρακολούθησης",
"account.direct": "Προσωπικό μήνυμα προς @{name}",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Περιορισμός συχνότητας",
"alert.unexpected.message": "Προέκυψε απροσδόκητο σφάλμα.",
"alert.unexpected.title": "Εεπ!",
"announcement.announcement": "Ανακοίνωση",
"autosuggest_hashtag.per_week": "{count} ανα εβδομάδα",
"boost_modal.combo": "Μπορείς να πατήσεις {combo} για να το προσπεράσεις αυτό την επόμενη φορά",
"bundle_column_error.body": "Κάτι πήγε στραβά ενώ φορτωνόταν αυτό το στοιχείο.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Κάτι πήγε στραβά κατά τη φόρτωση του στοιχείου.",
"bundle_modal_error.retry": "Δοκίμασε ξανά",
"column.blocks": "Αποκλεισμένοι χρήστες",
"column.bookmarks": "Σελιδοδείκτες",
"column.community": "Τοπική ροή",
"column.direct": "Προσωπικά μηνύματα",
"column.directory": "Δες προφίλ",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Διάρκεια δημοσκόπησης",
"compose_form.poll.option_placeholder": "Επιλογή {number}",
"compose_form.poll.remove_option": "Αφαίρεση επιλογής",
"compose_form.poll.switch_to_multiple": "Ενημέρωση δημοσκόπησης με πολλαπλές επιλογές",
"compose_form.poll.switch_to_single": "Ενημέρωση δημοσκόπησης με μοναδική επιλογή",
"compose_form.publish": "Τουτ",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Σημείωσε τα πολυμέσα ως ευαίσθητα",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Δεν έχει τουτ εδώ!",
"empty_column.account_unavailable": "Μη διαθέσιμο προφίλ",
"empty_column.blocks": "Δεν έχεις αποκλείσει κανέναν χρήστη ακόμα.",
"empty_column.bookmarked_statuses": "Δεν έχεις κανένα αποθηκευμένο τουτ ακόμα. Μόλις αποθηκεύσεις κάποιο, θα εμφανιστεί εδώ.",
"empty_column.community": "Η τοπική ροή είναι κενή. Γράψε κάτι δημόσιο παραμύθι ν' αρχινίσει!",
"empty_column.direct": "Δεν έχεις προσωπικά μηνύματα ακόμα. Όταν στείλεις ή λάβεις κανένα, θα εμφανιστεί εδώ.",
"empty_column.domain_blocks": "Δεν υπάρχουν αποκλεισμένοι τομείς ακόμα.",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Βασικές ρυθμίσεις",
"home.column_settings.show_reblogs": "Εμφάνιση προωθήσεων",
"home.column_settings.show_replies": "Εμφάνιση απαντήσεων",
"home.hide_announcements": "Απόκρυψη ανακοινώσεων",
"home.show_announcements": "Εμφάνιση ανακοινώσεων",
"intervals.full.days": "{number, plural, one {# μέρα} other {# μέρες}}",
"intervals.full.hours": "{number, plural, one {# ώρα} other {# ώρες}}",
"intervals.full.minutes": "{number, plural, one {# λεπτό} other {# λεπτά}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "άνοιγμα λίστας αποσιωπημενων χρηστών",
"keyboard_shortcuts.my_profile": "άνοιγμα του προφίλ σου",
"keyboard_shortcuts.notifications": "άνοιγμα στήλης ειδοποιήσεων",
"keyboard_shortcuts.open_media": "εμφάνιση πολυμέσου",
"keyboard_shortcuts.pinned": "άνοιγμα λίστας καρφιτσωμένων τουτ",
"keyboard_shortcuts.profile": "άνοιγμα προφίλ συγγραφέα",
"keyboard_shortcuts.reply": "απάντηση",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Απόκρυψη ειδοποιήσεων αυτού του χρήστη;",
"navigation_bar.apps": "Εφαρμογές φορητών συσκευών",
"navigation_bar.blocks": "Αποκλεισμένοι χρήστες",
"navigation_bar.bookmarks": "Σελιδοδείκτες",
"navigation_bar.community_timeline": "Τοπική ροή",
"navigation_bar.compose": "Γράψε νέο τουτ",
"navigation_bar.direct": "Προσωπικά μηνύματα",
@ -278,7 +288,9 @@
"navigation_bar.security": "Ασφάλεια",
"notification.favourite": "Ο/Η {name} σημείωσε ως αγαπημένη την κατάστασή σου",
"notification.follow": "Ο/Η {name} σε ακολούθησε",
"notification.follow_request": "Ο/H {name} ζήτησε να σε παρακολουθεί",
"notification.mention": "Ο/Η {name} σε ανέφερε",
"notification.own_poll": "Η ψηφοφορία σου έληξε",
"notification.poll": "Τελείωσε μια από τις ψηφοφορίες που συμμετείχες",
"notification.reblog": "Ο/Η {name} προώθησε την κατάστασή σου",
"notifications.clear": "Καθαρισμός ειδοποιήσεων",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Μπάρα γρήγορου φίλτρου",
"notifications.column_settings.filter_bar.show": "Εμφάνιση",
"notifications.column_settings.follow": "Νέοι ακόλουθοι:",
"notifications.column_settings.follow_request": "Νέο αίτημα παρακολούθησης:",
"notifications.column_settings.mention": "Αναφορές:",
"notifications.column_settings.poll": "Αποτελέσματα ψηφοφορίας:",
"notifications.column_settings.push": "Άμεσες ειδοποιήσεις",
@ -327,6 +340,7 @@
"relative_time.just_now": "τώρα",
"relative_time.minutes": "{number}λ",
"relative_time.seconds": "{number}δ",
"relative_time.today": "σήμερα",
"reply_indicator.cancel": "Άκυρο",
"report.forward": "Προώθηση προς {target}",
"report.forward_hint": "Ο λογαριασμός είναι από διαφορετικό διακομιστή. Να σταλεί ανώνυμο αντίγραφο της καταγγελίας κι εκεί;",
@ -349,6 +363,7 @@
"status.admin_account": "Άνοιγμα λειτουργίας διαμεσολάβησης για τον/την @{name}",
"status.admin_status": "Άνοιγμα αυτής της δημοσίευσης στη λειτουργία διαμεσολάβησης",
"status.block": "Αποκλεισμός @{name}",
"status.bookmark": "Σελιδοδείκτης",
"status.cancel_reblog_private": "Ακύρωσε την προώθηση",
"status.cannot_reblog": "Αυτή η δημοσίευση δεν μπορεί να προωθηθεί",
"status.copy": "Αντιγραφή συνδέσμου της δημοσίευσης",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name} προώθησε",
"status.reblogs.empty": "Κανείς δεν προώθησε αυτό το τουτ ακόμα. Μόλις το κάνει κάποια, θα εμφανιστούν εδώ.",
"status.redraft": "Σβήσε & ξαναγράψε",
"status.remove_bookmark": "Αφαίρεση σελιδοδείκτη",
"status.reply": "Απάντησε",
"status.replyAll": "Απάντησε στην συζήτηση",
"status.report": "Κατάγγειλε @{name}",
@ -399,16 +415,18 @@
"time_remaining.minutes": "απομένουν {number, plural, one {# λεπτό} other {# λεπτά}}",
"time_remaining.moments": "Απομένουν στιγμές",
"time_remaining.seconds": "απομένουν {number, plural, one {# δευτερόλεπτο} other {# δευτερόλεπτα}}",
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} μιλάνε",
"trends.count_by_accounts": "{count} {rawCount, plural, one {άτομο μιλάει} other {άτομα μιλάνε}}",
"trends.trending_now": "Δημοφιλή τώρα",
"ui.beforeunload": "Το προσχέδιό σου θα χαθεί αν φύγεις από το Mastodon.",
"upload_area.title": "Drag & drop για να ανεβάσεις",
"upload_button.label": "Πρόσθεσε πολυμέσα ({formats})",
"upload_error.limit": "Υπέρβαση ορίου μεγέθους ανεβασμένων αρχείων.",
"upload_error.poll": "Στις δημοσκοπήσεις δεν επιτρέπεται η μεταφόρτωση αρχείου.",
"upload_form.audio_description": "Περιγραφή για άτομα με προβλήματα ακοής",
"upload_form.description": "Περιέγραψε για όσους & όσες έχουν προβλήματα όρασης",
"upload_form.edit": "Ενημέρωση",
"upload_form.undo": "Διαγραφή",
"upload_form.video_description": "Περιγραφή για άτομα με προβλήματα ακοής ή όρασης",
"upload_modal.analyzing_picture": "Ανάλυση εικόνας…",
"upload_modal.apply": "Εφαρμογή",
"upload_modal.description_placeholder": "Λύκος μαύρος και ισχνός του πατέρα του καημός",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Προεπισκόπηση ({ratio})",
"upload_progress.label": "Ανεβαίνει...",
"video.close": "Κλείσε το βίντεο",
"video.download": "Λήψη αρχείου",
"video.exit_fullscreen": "Έξοδος από πλήρη οθόνη",
"video.expand": "Επέκταση βίντεο",
"video.fullscreen": "Πλήρης οθόνη",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Add or Remove from lists",
"account.badges.bot": "Bot",
"account.badges.group": "Group",
"account.block": "Block @{name}",
"account.block_domain": "Hide everything from {domain}",
"account.blocked": "Blocked",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "An unexpected error occurred.",
"alert.unexpected.title": "Oops!",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} per week",
"boost_modal.combo": "You can press {combo} to skip this next time",
"bundle_column_error.body": "Something went wrong while loading this component.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Something went wrong while loading this component.",
"bundle_modal_error.retry": "Try again",
"column.blocks": "Blocked users",
"column.bookmarks": "Bookmarks",
"column.community": "Local timeline",
"column.direct": "Direct messages",
"column.directory": "Browse profiles",
@ -82,8 +85,10 @@
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Post",
"compose_form.publish_loud": "{publish}",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Mark media as sensitive",
"compose_form.sensitive.marked": "Media is marked as sensitive",
"compose_form.sensitive.unmarked": "Media is not marked as sensitive",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "No posts here!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "You haven't blocked any users yet.",
"empty_column.bookmarked_statuses": "You don't have any bookmarked posts yet. When you bookmark one, it will show up here.",
"empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
"empty_column.domain_blocks": "There are no hidden domains yet.",
@ -184,6 +190,8 @@
"home.column_settings.basic": "Basic",
"home.column_settings.show_reblogs": "Show boosts",
"home.column_settings.show_replies": "Show replies",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
@ -225,6 +233,7 @@
"keyboard_shortcuts.muted": "to open muted users list",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.notifications": "to open notifications column",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "to open pinned posts list",
"keyboard_shortcuts.profile": "to open author's profile",
"keyboard_shortcuts.reply": "to reply",
@ -257,6 +266,7 @@
"mute_modal.hide_notifications": "Hide notifications from this user?",
"navigation_bar.apps": "Mobile apps",
"navigation_bar.blocks": "Blocked users",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "Local timeline",
"navigation_bar.compose": "Compose new post",
"navigation_bar.direct": "Direct messages",
@ -279,7 +289,9 @@
"navigation_bar.security": "Security",
"notification.favourite": "{name} favourited your status",
"notification.follow": "{name} followed you",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} mentioned you",
"notification.own_poll": "Your poll has ended",
"notification.poll": "A poll you have voted in has ended",
"notification.reblog": "{name} boosted your status",
"notifications.clear": "Clear notifications",
@ -290,6 +302,7 @@
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.follow": "New followers:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "Mentions:",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.push": "Push notifications",
@ -328,6 +341,7 @@
"relative_time.just_now": "now",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "today",
"reply_indicator.cancel": "Cancel",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
@ -350,6 +364,7 @@
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Block @{name}",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "Unboost",
"status.cannot_reblog": "This post cannot be boosted",
"status.copy": "Copy link to status",
@ -375,6 +390,7 @@
"status.reblogged_by": "{name} boosted",
"status.reblogs.empty": "No one has boosted this post yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "Reply",
"status.replyAll": "Reply to thread",
"status.report": "Report @{name}",
@ -407,9 +423,11 @@
"upload_button.label": "Add media ({formats})",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Describe for the visually impaired",
"upload_form.edit": "Edit",
"upload_form.undo": "Delete",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
@ -419,6 +437,7 @@
"upload_modal.preview_label": "Preview ({ratio})",
"upload_progress.label": "Uploading...",
"video.close": "Close video",
"video.download": "Download file",
"video.exit_fullscreen": "Exit full screen",
"video.expand": "Expand video",
"video.fullscreen": "Full screen",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Aldoni al aŭ forigi el listoj",
"account.badges.bot": "Roboto",
"account.badges.group": "Grupo",
"account.block": "Bloki @{name}",
"account.block_domain": "Kaŝi ĉion de {domain}",
"account.blocked": "Blokita",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Mesaĝkvante limigita",
"alert.unexpected.message": "Neatendita eraro okazis.",
"alert.unexpected.title": "Ups!",
"announcement.announcement": "Anonco",
"autosuggest_hashtag.per_week": "{count} semajne",
"boost_modal.combo": "Vi povas premi {combo} por preterpasi sekvafoje",
"bundle_column_error.body": "Io misfunkciis en la ŝargado de ĉi tiu elemento.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Io misfunkciis en la ŝargado de ĉi tiu elemento.",
"bundle_modal_error.retry": "Bonvolu reprovi",
"column.blocks": "Blokitaj uzantoj",
"column.bookmarks": "Legosignoj",
"column.community": "Loka tempolinio",
"column.direct": "Rektaj mesaĝoj",
"column.directory": "Trarigardi profilojn",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Balotenketa daŭro",
"compose_form.poll.option_placeholder": "Elekteblo {number}",
"compose_form.poll.remove_option": "Forigi ĉi tiu elekteblon",
"compose_form.poll.switch_to_multiple": "Ŝanĝi la balotenketon por permesi multajn elektojn",
"compose_form.poll.switch_to_single": "Ŝanĝi la balotenketon por permesi unu solan elekton",
"compose_form.publish": "Hup",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Marki la aŭdovidaĵojn kiel tiklaj",
@ -103,7 +108,7 @@
"confirmations.logout.confirm": "Elsaluti",
"confirmations.logout.message": "Ĉu vi certas ke vi volas elsaluti?",
"confirmations.mute.confirm": "Silentigi",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.explanation": "Ĉi-tio kaŝos mesaĝojn el ili kaj mesaĝojn kiuj mencias ilin, sed ili ankoraŭ rajtos vidi viajn mesaĝojn kaj sekvi vin.",
"confirmations.mute.message": "Ĉu vi certas, ke vi volas silentigi {name}?",
"confirmations.redraft.confirm": "Forigi kaj reskribi",
"confirmations.redraft.message": "Ĉu vi certas ke vi volas forigi tiun mesaĝon kaj reskribi ĝin? Ĉiuj diskonigoj kaj stelumoj estos perditaj, kaj respondoj al la originala mesaĝo estos senparentaj.",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Neniu mesaĝo ĉi tie!",
"empty_column.account_unavailable": "Profilo ne disponebla",
"empty_column.blocks": "Vi ankoraŭ ne blokis uzanton.",
"empty_column.bookmarked_statuses": "Vi ankoraŭ ne aldonis mesaĝon al viaj legosignoj. Kiam vi aldonos iun, tiu aperos ĉi tie.",
"empty_column.community": "La loka tempolinio estas malplena. Skribu ion por plenigi ĝin!",
"empty_column.direct": "Vi ankoraŭ ne havas rektan mesaĝon. Kiam vi sendos aŭ ricevos iun, ĝi aperos ĉi tie.",
"empty_column.domain_blocks": "Ankoraŭ neniu domajno estas blokita.",
@ -154,7 +160,7 @@
"empty_column.public": "Estas nenio ĉi tie! Publike skribu ion, aŭ mane sekvu uzantojn de aliaj serviloj por plenigi la publikan tempolinion",
"error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
"error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.copy_stacktrace": "Kopii stakspuron en tondujo",
"errors.unexpected_crash.report_issue": "Raporti problemon",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Bazaj agordoj",
"home.column_settings.show_reblogs": "Montri diskonigojn",
"home.column_settings.show_replies": "Montri respondojn",
"home.hide_announcements": "Kaŝi anoncojn",
"home.show_announcements": "Montri anoncojn",
"intervals.full.days": "{number, plural, one {# tago} other {# tagoj}}",
"intervals.full.hours": "{number, plural, one {# horo} other {# horoj}}",
"intervals.full.minutes": "{number, plural, one {# minuto} other {# minutoj}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "por malfermi la liston de silentigitaj uzantoj",
"keyboard_shortcuts.my_profile": "por malfermi vian profilon",
"keyboard_shortcuts.notifications": "por malfermi la kolumnon de sciigoj",
"keyboard_shortcuts.open_media": "por malfermi aŭdovidaĵon",
"keyboard_shortcuts.pinned": "por malfermi la liston de alpinglitaj mesaĝoj",
"keyboard_shortcuts.profile": "por malfermi la profilon de la aŭtoro",
"keyboard_shortcuts.reply": "por respondi",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Ĉu vi volas kaŝi la sciigojn de ĉi tiu uzanto?",
"navigation_bar.apps": "Telefonaj aplikaĵoj",
"navigation_bar.blocks": "Blokitaj uzantoj",
"navigation_bar.bookmarks": "Legosignoj",
"navigation_bar.community_timeline": "Loka tempolinio",
"navigation_bar.compose": "Skribi novan mesaĝon",
"navigation_bar.direct": "Rektaj mesaĝoj",
@ -278,7 +288,9 @@
"navigation_bar.security": "Sekureco",
"notification.favourite": "{name} stelumis vian mesaĝon",
"notification.follow": "{name} eksekvis vin",
"notification.follow_request": "{name} petis sekvi vin",
"notification.mention": "{name} menciis vin",
"notification.own_poll": "Via balotenketo finiĝitis",
"notification.poll": "Partoprenita balotenketo finiĝis",
"notification.reblog": "{name} diskonigis vian mesaĝon",
"notifications.clear": "Forviŝi sciigojn",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Rapida filtra breto",
"notifications.column_settings.filter_bar.show": "Montri",
"notifications.column_settings.follow": "Novaj sekvantoj:",
"notifications.column_settings.follow_request": "Novaj petoj de sekvado:",
"notifications.column_settings.mention": "Mencioj:",
"notifications.column_settings.poll": "Balotenketaj rezultoj:",
"notifications.column_settings.push": "Puŝsciigoj",
@ -327,6 +340,7 @@
"relative_time.just_now": "nun",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "hodiaŭ",
"reply_indicator.cancel": "Nuligi",
"report.forward": "Plusendi al {target}",
"report.forward_hint": "La konto estas en alia servilo. Ĉu sendi sennomigitan kopion de la signalo ankaŭ tien?",
@ -349,6 +363,7 @@
"status.admin_account": "Malfermi la kontrolan interfacon por @{name}",
"status.admin_status": "Malfermi ĉi tiun mesaĝon en la kontrola interfaco",
"status.block": "Bloki @{name}",
"status.bookmark": "Aldoni al la legosignoj",
"status.cancel_reblog_private": "Ne plu diskonigi",
"status.cannot_reblog": "Ĉi tiu mesaĝo ne diskonigeblas",
"status.copy": "Kopii la ligilon al la mesaĝo",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name} diskonigis",
"status.reblogs.empty": "Ankoraŭ neniu diskonigis tiun mesaĝon. Kiam iu faros tion, tiu aperos ĉi tie.",
"status.redraft": "Forigi kaj reskribi",
"status.remove_bookmark": "Forigi legosignon",
"status.reply": "Respondi",
"status.replyAll": "Respondi al la fadeno",
"status.report": "Signali @{name}",
@ -406,9 +422,11 @@
"upload_button.label": "Aldoni aŭdovidaĵon (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Limo de dosiera alŝutado transpasita.",
"upload_error.poll": "Alŝuto de dosiero ne permesita kun balotenketo.",
"upload_form.audio_description": "Priskribi por homoj kiuj malfacile aŭdi",
"upload_form.description": "Priskribi por misvidantaj homoj",
"upload_form.edit": "Redakti",
"upload_form.undo": "Forigi",
"upload_form.video_description": "Priskribi por homoj kiuj malfacile aŭdi aŭ vidi",
"upload_modal.analyzing_picture": "Bilda analizado…",
"upload_modal.apply": "Apliki",
"upload_modal.description_placeholder": "Laŭ Ludoviko Zamenhof bongustas freŝa ĉeĥa manĝaĵo kun spicoj",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Antaŭvido ({ratio})",
"upload_progress.label": "Alŝutado…",
"video.close": "Fermi la videon",
"video.download": "Elŝuti dosieron",
"video.exit_fullscreen": "Eksigi plenekrana",
"video.expand": "Grandigi la videon",
"video.fullscreen": "Igi plenekrana",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Agregar o quitar de las listas",
"account.badges.bot": "Bot",
"account.badges.group": "Grupo",
"account.block": "Bloquear a @{name}",
"account.block_domain": "Ocultar todo de {domain}",
"account.blocked": "Bloqueado",
@ -40,8 +41,9 @@
"account.unmute_notifications": "Dejar de silenciar las notificaciones de @{name}",
"alert.rate_limited.message": "Por favor, reintentá después de las {retry_time, time, medium}.",
"alert.rate_limited.title": "Tarifa limitada",
"alert.unexpected.message": "Ocurrió un error inesperado.",
"alert.unexpected.message": "Ocurrió un error.",
"alert.unexpected.title": "¡Epa!",
"announcement.announcement": "Anuncio",
"autosuggest_hashtag.per_week": "{count} por semana",
"boost_modal.combo": "Podés hacer clic en {combo} para saltar esto la próxima vez",
"bundle_column_error.body": "Algo salió mal al cargar este componente.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Algo salió mal al cargar este componente.",
"bundle_modal_error.retry": "Intentá de nuevo",
"column.blocks": "Usuarios bloqueados",
"column.bookmarks": "Marcadores",
"column.community": "Línea temporal local",
"column.direct": "Mensajes directos",
"column.directory": "Explorar perfiles",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Duración de la encuesta",
"compose_form.poll.option_placeholder": "Opción {number}",
"compose_form.poll.remove_option": "Quitá esta opción",
"compose_form.poll.switch_to_multiple": "Cambiar encuesta para permitir opciones múltiples",
"compose_form.poll.switch_to_single": "Cambiar encuesta para permitir una sola opción",
"compose_form.publish": "Tootear",
"compose_form.publish_loud": "¡{publish}!",
"compose_form.sensitive.hide": "Marcar medio como sensible",
@ -103,7 +108,7 @@
"confirmations.logout.confirm": "Cerrar sesión",
"confirmations.logout.message": "¿Estás seguro que querés cerrar la sesión?",
"confirmations.mute.confirm": "Silenciar",
"confirmations.mute.explanation": "Esto ocultará mensajes de ellos y mensajes que los mencionen, pero todavía les permitirá ver tus mensajes o seguirte.",
"confirmations.mute.explanation": "Se ocultarán los mensajes de esta cuenta y los mensajes de otras cuentas que mencionen a ésta, pero todavía esta cuenta podrá ver tus mensajes o seguirte.",
"confirmations.mute.message": "¿Estás seguro que querés silenciar a {name}?",
"confirmations.redraft.confirm": "Eliminar toot original y editarlo",
"confirmations.redraft.message": "¿Estás seguro que querés eliminar este estado y volver a editarlo? Se perderán las veces marcadas como favoritos y los retoots, y las respuestas a la publicación original quedarán huérfanas.",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "¡No hay toots aquí!",
"empty_column.account_unavailable": "Perfil no disponible",
"empty_column.blocks": "Todavía no bloqueaste a ningún usuario.",
"empty_column.bookmarked_statuses": "Todavía no tenés toots guardados en marcadores. Cuando guardés uno en marcadores, se mostrará acá.",
"empty_column.community": "La línea temporal local está vacía. ¡Escribí algo en modo público para que se empiece a correr la bola!",
"empty_column.direct": "Todavía no tenés ningún mensaje directo. Cuando enviés o recibás uno, se mostrará acá.",
"empty_column.domain_blocks": "Todavía no hay dominios ocultos.",
@ -178,6 +184,8 @@
"home.column_settings.basic": "Básico",
"home.column_settings.show_reblogs": "Mostrar retoots",
"home.column_settings.show_replies": "Mostrar respuestas",
"home.hide_announcements": "Ocultar anuncios",
"home.show_announcements": "Mostrar anuncios",
"intervals.full.days": "{number, plural, one {# día} other {# días}}",
"intervals.full.hours": "{number, plural, one {# hora} other {# horas}}",
"intervals.full.minutes": "{number, plural, one {# minuto} other {# minutos}}",
@ -185,7 +193,7 @@
"introduction.federation.federated.headline": "Federado",
"introduction.federation.federated.text": "Los toots públicos de otros servidores del fediverso aparecerán en la línea temporal federada.",
"introduction.federation.home.headline": "Principal",
"introduction.federation.home.text": "Los toots de las personas que seguíss aparecerán en tu línea temporal principal. ¡Podés seguir a cualquiera en cualquier servidor!",
"introduction.federation.home.text": "Los toots de las personas que seguís aparecerán en tu línea temporal principal. ¡Podés seguir a cualquiera en cualquier servidor!",
"introduction.federation.local.headline": "Local",
"introduction.federation.local.text": "Los toots públicos de las personas en el mismo servidor aparecerán en la línea temporal local.",
"introduction.interactions.action": "¡Terminar tutorial!",
@ -219,6 +227,7 @@
"keyboard_shortcuts.muted": "abrir la lista de usuarios silenciados",
"keyboard_shortcuts.my_profile": "para abrir tu perfil",
"keyboard_shortcuts.notifications": "para abrir la columna de notificaciones",
"keyboard_shortcuts.open_media": "para abrir archivos de medios",
"keyboard_shortcuts.pinned": "para abrir lista de toots fijados",
"keyboard_shortcuts.profile": "para abrir el perfil del autor",
"keyboard_shortcuts.reply": "para responder",
@ -251,6 +260,7 @@
"mute_modal.hide_notifications": "¿Querés ocultar las notificaciones de este usuario?",
"navigation_bar.apps": "Aplicaciones móviles",
"navigation_bar.blocks": "Usuarios bloqueados",
"navigation_bar.bookmarks": "Marcadores",
"navigation_bar.community_timeline": "Línea temporal local",
"navigation_bar.compose": "Redactar un nuevo toot",
"navigation_bar.direct": "Mensajes directos",
@ -273,7 +283,9 @@
"navigation_bar.security": "Seguridad",
"notification.favourite": "{name} marcó tu estado como favorito",
"notification.follow": "{name} te empezó a seguir",
"notification.follow_request": "{name} solicitó seguirte",
"notification.mention": "{name} te mencionó",
"notification.own_poll": "Tu encuesta finalizó",
"notification.poll": "Finalizó una encuesta en la que votaste",
"notification.reblog": "{name} retooteó tu estado",
"notifications.clear": "Limpiar notificaciones",
@ -284,6 +296,7 @@
"notifications.column_settings.filter_bar.category": "Barra de filtrado rápido",
"notifications.column_settings.filter_bar.show": "Mostrar",
"notifications.column_settings.follow": "Nuevos seguidores:",
"notifications.column_settings.follow_request": "Nuevas solicitudes de seguimiento:",
"notifications.column_settings.mention": "Menciones:",
"notifications.column_settings.poll": "Resultados de la encuesta:",
"notifications.column_settings.push": "Notificaciones push",
@ -322,6 +335,7 @@
"relative_time.just_now": "recién",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "hoy",
"reply_indicator.cancel": "Cancelar",
"report.forward": "Reenviar a {target}",
"report.forward_hint": "La cuenta es de otro servidor. ¿Querés enviar una copia anonimizada del informe también ahí?",
@ -344,6 +358,7 @@
"status.admin_account": "Abrir interface de moderación para @{name}",
"status.admin_status": "Abrir este estado en la interface de moderación",
"status.block": "Bloquear a @{name}",
"status.bookmark": "Marcador",
"status.cancel_reblog_private": "Quitar retoot",
"status.cannot_reblog": "No se puede retootear este toot",
"status.copy": "Copiar enlace al estado",
@ -365,9 +380,10 @@
"status.read_more": "Leer más",
"status.reblog": "Retootear",
"status.reblog_private": "Retootear a la audiencia original",
"status.reblogged_by": "Retooteado por {name}",
"status.reblogged_by": "{name} retooteó",
"status.reblogs.empty": "Todavía nadie retooteó este toot. Cuando alguien lo haga, se mostrará acá.",
"status.redraft": "Eliminar toot original y editarlo",
"status.remove_bookmark": "Quitar marcador",
"status.reply": "Responder",
"status.replyAll": "Responder al hilo",
"status.report": "Denunciar a @{name}",
@ -400,9 +416,11 @@
"upload_button.label": "Agregar medios ({formats})",
"upload_error.limit": "Se excedió el límite de subida de archivos.",
"upload_error.poll": "No se permite la subida de archivos en encuestas.",
"upload_form.audio_description": "Describir para personas con problemas auditivos",
"upload_form.description": "Agregar descripción para los usuarios con dificultades visuales",
"upload_form.edit": "Editar",
"upload_form.undo": "Eliminar",
"upload_form.video_description": "Describir para personas con problemas auditivos o visuales",
"upload_modal.analyzing_picture": "Analizando imagen…",
"upload_modal.apply": "Aplicar",
"upload_modal.description_placeholder": "El veloz murciélago hindú comía feliz cardillo y kiwi. La cigüeña tocaba el saxofón detrás del palenque de paja.",
@ -412,6 +430,7 @@
"upload_modal.preview_label": "Previsualización ({ratio})",
"upload_progress.label": "Subiendo…",
"video.close": "Cerrar video",
"video.download": "Descargar archivo",
"video.exit_fullscreen": "Salir de pantalla completa",
"video.expand": "Expandir vídeo",
"video.fullscreen": "Pantalla completa",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Agregar o eliminar de listas",
"account.badges.bot": "Bot",
"account.badges.group": "Grupo",
"account.block": "Bloquear a @{name}",
"account.block_domain": "Ocultar todo de {domain}",
"account.blocked": "Bloqueado",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Tarifa limitada",
"alert.unexpected.message": "Hubo un error inesperado.",
"alert.unexpected.title": "¡Ups!",
"announcement.announcement": "Anuncio",
"autosuggest_hashtag.per_week": "{count} por semana",
"boost_modal.combo": "Puedes hacer clic en {combo} para saltar este aviso la próxima vez",
"bundle_column_error.body": "Algo salió mal al cargar este componente.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Algo salió mal al cargar este componente.",
"bundle_modal_error.retry": "Inténtalo de nuevo",
"column.blocks": "Usuarios bloqueados",
"column.bookmarks": "Marcadores",
"column.community": "Línea de tiempo local",
"column.direct": "Mensajes directos",
"column.directory": "Buscar perfiles",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Duración de la encuesta",
"compose_form.poll.option_placeholder": "Elección {number}",
"compose_form.poll.remove_option": "Eliminar esta opción",
"compose_form.poll.switch_to_multiple": "Modificar encuesta para permitir múltiples opciones",
"compose_form.poll.switch_to_single": "Modificar encuesta para permitir una única opción",
"compose_form.publish": "Tootear",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Marcar multimedia como sensible",
@ -127,7 +132,7 @@
"emoji_button.food": "Comida y bebida",
"emoji_button.label": "Insertar emoji",
"emoji_button.nature": "Naturaleza",
"emoji_button.not_found": "No hay emojos!! (╯°□°)╯︵ ┻━┻",
"emoji_button.not_found": "No hay emojis!! ¯\\_(ツ)_/¯",
"emoji_button.objects": "Objetos",
"emoji_button.people": "Gente",
"emoji_button.recent": "Usados frecuentemente",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "¡No hay toots aquí!",
"empty_column.account_unavailable": "Perfil no disponible",
"empty_column.blocks": "Aún no has bloqueado a ningún usuario.",
"empty_column.bookmarked_statuses": "Aún no tienes ningún toot guardado como marcador. Cuando guardes uno, se mostrará aquí.",
"empty_column.community": "La línea de tiempo local está vacía. ¡Escribe algo para empezar la fiesta!",
"empty_column.direct": "Aún no tienes ningún mensaje directo. Cuando envíes o recibas uno, se mostrará aquí.",
"empty_column.domain_blocks": "Todavía no hay dominios ocultos.",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Básico",
"home.column_settings.show_reblogs": "Mostrar retoots",
"home.column_settings.show_replies": "Mostrar respuestas",
"home.hide_announcements": "Ocultar anuncios",
"home.show_announcements": "Mostrar anuncios",
"intervals.full.days": "{number, plural, one {# día} other {# días}}",
"intervals.full.hours": "{number, plural, one {# hora} other {# horas}}",
"intervals.full.minutes": "{number, plural, one {# minuto} other {# minutos}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "abrir la lista de usuarios silenciados",
"keyboard_shortcuts.my_profile": "abrir tu perfil",
"keyboard_shortcuts.notifications": "abrir la columna de notificaciones",
"keyboard_shortcuts.open_media": "para abrir archivos multimedia",
"keyboard_shortcuts.pinned": "abrir la lista de toots destacados",
"keyboard_shortcuts.profile": "abrir el perfil del autor",
"keyboard_shortcuts.reply": "para responder",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Ocultar notificaciones de este usuario?",
"navigation_bar.apps": "Aplicaciones móviles",
"navigation_bar.blocks": "Usuarios bloqueados",
"navigation_bar.bookmarks": "Marcadores",
"navigation_bar.community_timeline": "Historia local",
"navigation_bar.compose": "Escribir un nuevo toot",
"navigation_bar.direct": "Mensajes directos",
@ -278,7 +288,9 @@
"navigation_bar.security": "Seguridad",
"notification.favourite": "{name} marcó tu estado como favorito",
"notification.follow": "{name} te empezó a seguir",
"notification.follow_request": "{name} ha solicitado seguirte",
"notification.mention": "{name} te ha mencionado",
"notification.own_poll": "Tu encuesta ha terminado",
"notification.poll": "Una encuesta en la que has votado ha terminado",
"notification.reblog": "{name} ha retooteado tu estado",
"notifications.clear": "Limpiar notificaciones",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Barra de filtrado rápido",
"notifications.column_settings.filter_bar.show": "Mostrar",
"notifications.column_settings.follow": "Nuevos seguidores:",
"notifications.column_settings.follow_request": "Nuevas solicitudes de seguimiento:",
"notifications.column_settings.mention": "Menciones:",
"notifications.column_settings.poll": "Resultados de la votación:",
"notifications.column_settings.push": "Notificaciones push",
@ -327,6 +340,7 @@
"relative_time.just_now": "ahora",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "hoy",
"reply_indicator.cancel": "Cancelar",
"report.forward": "Reenviar a {target}",
"report.forward_hint": "Esta cuenta es de otro servidor. ¿Enviar una copia anonimizada del informe allí también?",
@ -349,6 +363,7 @@
"status.admin_account": "Abrir interfaz de moderación para @{name}",
"status.admin_status": "Abrir este estado en la interfaz de moderación",
"status.block": "Bloquear a @{name}",
"status.bookmark": "Marcador",
"status.cancel_reblog_private": "Des-impulsar",
"status.cannot_reblog": "Este toot no puede retootearse",
"status.copy": "Copiar enlace al estado",
@ -374,6 +389,7 @@
"status.reblogged_by": "Retooteado por {name}",
"status.reblogs.empty": "Nadie impulsó este toot todavía. Cuando alguien lo haga, aparecerá aqui.",
"status.redraft": "Borrar y volver a borrador",
"status.remove_bookmark": "Eliminar marcador",
"status.reply": "Responder",
"status.replyAll": "Responder al hilo",
"status.report": "Reportar",
@ -406,9 +422,11 @@
"upload_button.label": "Subir multimedia (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Límite de subida de archivos excedido.",
"upload_error.poll": "Subida de archivos no permitida con encuestas.",
"upload_form.audio_description": "Describir para personas con problemas auditivos",
"upload_form.description": "Describir para los usuarios con dificultad visual",
"upload_form.edit": "Editar",
"upload_form.undo": "Borrar",
"upload_form.video_description": "Describir para personas con problemas auditivos o visuales",
"upload_modal.analyzing_picture": "Analizando imagen…",
"upload_modal.apply": "Aplicar",
"upload_modal.description_placeholder": "Un rápido zorro marrón salta sobre el perro perezoso",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Vista previa ({ratio})",
"upload_progress.label": "Subiendo…",
"video.close": "Cerrar video",
"video.download": "Descargar archivo",
"video.exit_fullscreen": "Salir de pantalla completa",
"video.expand": "Expandir vídeo",
"video.fullscreen": "Pantalla completa",

View File

@ -1,10 +1,11 @@
{
"account.add_or_remove_from_list": "Lisa või Eemalda nimekirjadest",
"account.badges.bot": "Robot",
"account.badges.group": "Grupp",
"account.block": "Blokeeri @{name}",
"account.block_domain": "Peida kõik domeenist {domain}",
"account.blocked": "Blokeeritud",
"account.cancel_follow_request": "Cancel follow request",
"account.cancel_follow_request": "Tühista jälgimistaotlus",
"account.direct": "Otsesõnum @{name}",
"account.domain_blocked": "Domeen peidetud",
"account.edit_profile": "Muuda profiili",
@ -14,18 +15,18 @@
"account.followers.empty": "Keegi ei jälgi seda kasutajat veel.",
"account.follows": "Jälgib",
"account.follows.empty": "See kasutaja ei jälgi veel kedagi.",
"account.follows_you": "Jälgib sind",
"account.follows_you": "Jälgib Teid",
"account.hide_reblogs": "Peida upitused kasutajalt @{name}",
"account.last_status": "Last active",
"account.last_status": "Viimati aktiivne",
"account.link_verified_on": "Selle lingi autorsust kontrolliti {date}",
"account.locked_info": "Selle konto privaatsus on lukustatud. Omanik vaatab manuaalselt üle, kes teda jägida saab.",
"account.locked_info": "Selle konto privaatsussätteks on lukustatud. Omanik vaatab manuaalselt üle, kes teda jägida saab.",
"account.media": "Meedia",
"account.mention": "Maini @{name}",
"account.moved_to": "{name} on kolinud:",
"account.mute": "Vaigista @{name}",
"account.mute_notifications": "Vaigista teated kasutajalt @{name}",
"account.muted": "Vaigistatud",
"account.never_active": "Never",
"account.never_active": "Mitte kunagi",
"account.posts": "Tuututused",
"account.posts_with_replies": "Tuututused ja vastused",
"account.report": "Raporteeri @{name}",
@ -38,22 +39,24 @@
"account.unfollow": "Ära jälgi",
"account.unmute": "Ära vaigista @{name}",
"account.unmute_notifications": "Ära vaigista teateid kasutajalt @{name}",
"alert.rate_limited.message": "Please retry after {retry_time, time, medium}.",
"alert.rate_limited.title": "Rate limited",
"alert.rate_limited.message": "Palun proovi uuesti pärast {retry_time, time, medium}.",
"alert.rate_limited.title": "Piiratud",
"alert.unexpected.message": "Tekkis ootamatu viga.",
"alert.unexpected.title": "Oih!",
"autosuggest_hashtag.per_week": "{count} per week",
"boost_modal.combo": "Saad vajutada {combo}, et see järgmine kord vahele jätta",
"bundle_column_error.body": "Mindagi läks valesti selle komponendi laadimisel.",
"announcement.announcement": "Teadaanne",
"autosuggest_hashtag.per_week": "{count} nädalas",
"boost_modal.combo": "Võite vajutada {combo}, et see järgmine kord vahele jätta",
"bundle_column_error.body": "Midagi läks valesti selle komponendi laadimisel.",
"bundle_column_error.retry": "Proovi uuesti",
"bundle_column_error.title": "Võrgu viga",
"bundle_modal_error.close": "Sulge",
"bundle_modal_error.message": "Selle komponendi laadimisel läks midagi viltu.",
"bundle_modal_error.retry": "Proovi uuesti",
"column.blocks": "Blokeeritud kasutajad",
"column.bookmarks": "Järjehoidjad",
"column.community": "Kohalik ajajoon",
"column.direct": "Otsesõnumid",
"column.directory": "Browse profiles",
"column.directory": "Sirvi profiile",
"column.domain_blocks": "Peidetud domeenid",
"column.favourites": "Lemmikud",
"column.follow_requests": "Jälgimistaotlused",
@ -61,7 +64,7 @@
"column.lists": "Nimekirjad",
"column.mutes": "Vaigistatud kasutajad",
"column.notifications": "Teated",
"column.pins": "Kinnitatud upitused",
"column.pins": "Kinnitatud tuututused",
"column.public": "Föderatiivne ajajoon",
"column_back_button.label": "Tagasi",
"column_header.hide_settings": "Peida sätted",
@ -75,13 +78,15 @@
"compose_form.direct_message_warning": "See tuut saadetakse ainult mainitud kasutajatele.",
"compose_form.direct_message_warning_learn_more": "Vaata veel",
"compose_form.hashtag_warning": "Seda tuuti ei kuvata ühegi sildi all, sest see on kirjendamata. Ainult avalikud tuutid on sildi järgi otsitavad.",
"compose_form.lock_disclaimer": "Sinu konto ei ole {locked}. Igaüks saab sind jälgida ja näha su ainult-jälgijatele postitusi.",
"compose_form.lock_disclaimer": "Teie konto ei ole {locked}. Igaüks saab Teid jälgida ja näha Teie ainult-jälgijatele postitusi.",
"compose_form.lock_disclaimer.lock": "lukus",
"compose_form.placeholder": "Millest mõtled?",
"compose_form.placeholder": "Millest mõtlete?",
"compose_form.poll.add_option": "Lisa valik",
"compose_form.poll.duration": "Küsitluse kestus",
"compose_form.poll.option_placeholder": "Valik {number}",
"compose_form.poll.remove_option": "Eemalda see valik",
"compose_form.poll.switch_to_multiple": "Muuda küsitlust lubamaks mitut valikut",
"compose_form.poll.switch_to_single": "Muuda küsitlust lubamaks ainult ühte valikut",
"compose_form.publish": "Tuut",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Märgista meedia tundlikuks",
@ -89,36 +94,36 @@
"compose_form.sensitive.unmarked": "Meedia ei ole sensitiivseks märgitud",
"compose_form.spoiler.marked": "Tekst on hoiatuse taha peidetud",
"compose_form.spoiler.unmarked": "Tekst ei ole peidetud",
"compose_form.spoiler_placeholder": "Kirjuta oma hoiatus siia",
"compose_form.spoiler_placeholder": "Kirjutage oma hoiatus siia",
"confirmation_modal.cancel": "Katkesta",
"confirmations.block.block_and_report": "Blokeeri & Teata",
"confirmations.block.confirm": "Blokeeri",
"confirmations.block.message": "Oled kindel, et soovid blokkida {name}?",
"confirmations.block.message": "Olete kindel, et soovite blokeerida {name}?",
"confirmations.delete.confirm": "Kustuta",
"confirmations.delete.message": "Oled kindel, et soovid selle staatuse kustutada?",
"confirmations.delete.message": "Olete kindel, et soovite selle staatuse kustutada?",
"confirmations.delete_list.confirm": "Kustuta",
"confirmations.delete_list.message": "Oled kindel, et soovid selle nimekirja püsivalt kustutada?",
"confirmations.delete_list.message": "Olete kindel, et soovite selle nimekirja püsivalt kustutada?",
"confirmations.domain_block.confirm": "Peida terve domeen",
"confirmations.domain_block.message": "Oled ikka päris kindel, et soovid blokeerida terve {domain}? Enamikul juhtudel piisab mõnest sihitud blokist või vaigistusest, mis on eelistatav. Sa ei näe selle domeeni sisu üheski avalikus ajajoones või teadetes. Sinu jälgijad sellest domeenist eemaldatakse.",
"confirmations.logout.confirm": "Log out",
"confirmations.logout.message": "Are you sure you want to log out?",
"confirmations.domain_block.message": "Olete ikka päris kindel, et soovite blokeerida terve {domain}? Enamikul juhtudel piisab mõnest sihitud blokist või vaigistusest, mis on eelistatav. Te ei näe selle domeeni sisu üheski avalikus ajajoones või teadetes. Teie jälgijad sellest domeenist eemaldatakse.",
"confirmations.logout.confirm": "Välju",
"confirmations.logout.message": "Kas olete kindel, et soovite välja logida?",
"confirmations.mute.confirm": "Vaigista",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.message": "Oled kindel, et soovid {name} vaigistada?",
"confirmations.mute.explanation": "See peidab postitusi temalt ning postitusi, kus mainitakse neid, kuid see lubab neil ikka näha Teie postitusi ning Teid jälgida.",
"confirmations.mute.message": "Olete kindel, et soovite {name} vaigistada?",
"confirmations.redraft.confirm": "Kustuta & taasalusta",
"confirmations.redraft.message": "Oled kindel, et soovid selle staatuse kustutada ja alustada uuesti? Lemmikud ja upitused lähevad kaotsi ja vastused originaaalpostitusele jäävad orvuks.",
"confirmations.redraft.message": "Olete kindel, et soovite selle staatuse kustutada ja alustada uuesti? Lemmikud ja upitused lähevad kaotsi ja vastused originaaalpostitusele jäävad orvuks.",
"confirmations.reply.confirm": "Vasta",
"confirmations.reply.message": "Kohene vastamine kirjutab üle sõnumi, mida hetkel koostad. Oled kindel, et soovid jätkata?",
"confirmations.reply.message": "Praegu vastamine kirjutab üle sõnumi, mida hetkel koostate. Olete kindel, et soovite jätkata?",
"confirmations.unfollow.confirm": "Ära jälgi",
"confirmations.unfollow.message": "Oled kindel, et ei soovi jälgida {name}?",
"conversation.delete": "Delete conversation",
"conversation.mark_as_read": "Mark as read",
"conversation.open": "View conversation",
"conversation.with": "With {names}",
"directory.federated": "From known fediverse",
"directory.local": "From {domain} only",
"directory.new_arrivals": "New arrivals",
"directory.recently_active": "Recently active",
"confirmations.unfollow.message": "Olete kindel, et ei soovi rohkem jälgida kasutajat {name}?",
"conversation.delete": "Kustuta vestlus",
"conversation.mark_as_read": "Märgi loetuks",
"conversation.open": "Vaata vestlust",
"conversation.with": "Koos {names}",
"directory.federated": "Teatud fediversumist",
"directory.local": "Ainult domeenilt {domain}",
"directory.new_arrivals": "Uustulijad",
"directory.recently_active": "Hiljuti aktiivne",
"embed.instructions": "Manusta see staatus oma veebilehele, kopeerides alloleva koodi.",
"embed.preview": "Nii näeb see välja:",
"emoji_button.activity": "Tegevus",
@ -138,24 +143,25 @@
"empty_column.account_timeline": "Siin tuute ei ole!",
"empty_column.account_unavailable": "Profiil pole saadaval",
"empty_column.blocks": "Sa ei ole veel ühtegi kasutajat blokeerinud.",
"empty_column.community": "Kohalik ajajoon on tühi. Kirjuta midagi avalikult, et pall veerema saada!",
"empty_column.direct": "Sul ei veel otsesõnumeid. Kui saadad või võtad mõne vastu, ilmuvad nad siia.",
"empty_column.bookmarked_statuses": "Teil pole veel järjehoidjatesse lisatud tuututusi. Kui lisate mõne, näete neid siin.",
"empty_column.community": "Kohalik ajajoon on tühi. Kirjutage midagi avalikult, et pall veerema ajada!",
"empty_column.direct": "Teil ei ole veel otsesõnumeid. Kui saadate või võtate mõne vastu, ilmuvad nad siia.",
"empty_column.domain_blocks": "Siin ei ole veel peidetud domeene.",
"empty_column.favourited_statuses": "Sul pole veel lemmikuid tuute. Kui märgid mõne, näed neid siin.",
"empty_column.favourited_statuses": "Teil pole veel lemmikuid tuute. Kui märgite mõne, näete neid siin.",
"empty_column.favourites": "Keegi pole veel seda tuuti lemmikuks märkinud. Kui seegi seda teeb, näed seda siin.",
"empty_column.follow_requests": "Sul pole veel ühtegi jälgimise taotlust. Kui saad mõne, näed seda siin.",
"empty_column.follow_requests": "Teil pole veel ühtegi jälgimise taotlust. Kui saate mõne, näete neid siin.",
"empty_column.hashtag": "Selle sildiga pole veel midagi.",
"empty_column.home": "Sinu kodu ajajoon on tühi! Külasta {public} või kasuta otsingut alustamaks ja kohtamaks teisi kasutajaid.",
"empty_column.home": "Teie kodu ajajoon on tühi! Külastage {public} või kasutage otsingut alustamaks ja kohtamaks teisi kasutajaid.",
"empty_column.home.public_timeline": "avalik ajajoon",
"empty_column.list": "Siin nimstus pole veel midagi. Kui selle nimistu liikmed postitavad uusi staatusi, näed neid siin.",
"empty_column.lists": "Sul ei ole veel ühtegi nimekirja. Kui lood mõne, näed seda siin.",
"empty_column.mutes": "Sa pole veel ühtegi kasutajat vaigistanud.",
"empty_column.notifications": "Sul ei ole veel teateid. Suhtle teistega alustamaks vestlust.",
"empty_column.lists": "Teil ei ole veel ühtegi nimekirja. Kui loote mõne, näete neid siin.",
"empty_column.mutes": "Te pole veel ühtegi kasutajat vaigistanud.",
"empty_column.notifications": "Teil ei ole veel teateid. Suhelge teistega alustamaks vestlust.",
"empty_column.public": "Siin pole midagi! Kirjuta midagi avalikut või jälgi ise kasutajaid täitmaks seda ruumi",
"error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
"error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.report_issue": "Report issue",
"error.unexpected_crash.explanation": "Meie poolse probleemi või veebilehitseja ühilduvus probleemi tõttu ei suutnud me Teile seda lehekülge korrektselt näidata.",
"error.unexpected_crash.next_steps": "Proovige lehekülge uuesti avada. Kui see ei aita, võite proovida kasutada Mastodoni mõne muu veebilehitseja või äppi kaudu.",
"errors.unexpected_crash.copy_stacktrace": "Kopeeri stacktrace lõikelauale",
"errors.unexpected_crash.report_issue": "Teavita veast",
"follow_request.authorize": "Autoriseeri",
"follow_request.reject": "Hülga",
"getting_started.developers": "Arendajad",
@ -163,7 +169,7 @@
"getting_started.documentation": "Dokumentatsioon",
"getting_started.heading": "Alustamine",
"getting_started.invite": "Kutsu inimesi",
"getting_started.open_source_notice": "Mastodon on avatud lähtekoodiga tarkvara. Saad panustada või teatada probleemidest GitHubis {github}.",
"getting_started.open_source_notice": "Mastodon on avatud lähtekoodiga tarkvara. Saate panustada või teatada probleemidest GitHubis {github}.",
"getting_started.security": "Turvalisus",
"getting_started.terms": "Kasutustingimused",
"hashtag.column_header.tag_mode.all": "ja {additional}",
@ -178,6 +184,8 @@
"home.column_settings.basic": "Peamine",
"home.column_settings.show_reblogs": "Näita upitusi",
"home.column_settings.show_replies": "Näita vastuseid",
"home.hide_announcements": "Peida teadaanded",
"home.show_announcements": "Kuva teadaandeid",
"intervals.full.days": "{number, plural, one {# päev} other {# päevad}}",
"intervals.full.hours": "{number, plural, one {# tund} other {# tundi}}",
"intervals.full.minutes": "{number, plural, one {# minut} other {# minutit}}",
@ -185,19 +193,19 @@
"introduction.federation.federated.headline": "Föderatiivne",
"introduction.federation.federated.text": "Avalikud postitused teistest föderatsiooni serveritest kuvatakse föderatiivsel ajajoonel.",
"introduction.federation.home.headline": "Kodu",
"introduction.federation.home.text": "Inimest postitused keda jälgid kuvatakse sinu koduajajoonel. Saad jälgida igaüht igas serveris!",
"introduction.federation.home.text": "Inimeste, keda jälgite, postitused kuvatakse Teie koduajajoonel. Saate jälgida igaüht igas serveris!",
"introduction.federation.local.headline": "Kohalik",
"introduction.federation.local.text": "Samas serveris olevate inimeste postitused kuvatakse kohalikul ajajoonel.",
"introduction.interactions.action": "Välju õpetusest!",
"introduction.interactions.favourite.headline": "Lemmik",
"introduction.interactions.favourite.text": "Saad tuuti salvestada ja anda autorile teada, et meeldis märkides selle lemmikuks.",
"introduction.interactions.favourite.text": "Saate tuuti salvestada ja anda autorile teada, et see meeldis Teile, märkides selle lemmikuks.",
"introduction.interactions.reblog.headline": "Upita",
"introduction.interactions.reblog.text": "Saad jagada teiste inimeste tuute oma jälgijatega upitades neid.",
"introduction.interactions.reblog.text": "Saate jagada teiste inimeste tuute oma jälgijatega neid upitades.",
"introduction.interactions.reply.headline": "Vasta",
"introduction.interactions.reply.text": "Saad vastata teiste ja enda tuutidele, mis ühendab nad kokku aruteluks.",
"introduction.interactions.reply.text": "Saate vastata teiste ja enda tuutidele, mis ühendab nad kokku aruteluks.",
"introduction.welcome.action": "Lähme!",
"introduction.welcome.headline": "Esimesed sammud",
"introduction.welcome.text": "Teretulemast fediversumisse! Mõne aja pärast saad avaldada sõnumeid ja rääkida oma sõpradega läbi laia valiku serverite. Aga see server, {domain}, on eriline—ta majutab sinu profiili. Seega jäta ta nimi meelde.",
"introduction.welcome.text": "Teretulemast fediversumisse! Mõne aja pärast saate avaldada sõnumeid ja rääkida oma sõpradega läbi laia valiku serverite. Aga see server, {domain}, on eriline—see majutab sinu profiili. Seega jäta selle nimi meelde.",
"keyboard_shortcuts.back": "tagasiminekuks",
"keyboard_shortcuts.blocked": "avamaks blokeeritud kasutajate nimistut",
"keyboard_shortcuts.boost": "upitamiseks",
@ -219,6 +227,7 @@
"keyboard_shortcuts.muted": "avamaks vaigistatud kasutajate nimistut",
"keyboard_shortcuts.my_profile": "avamaks profiili",
"keyboard_shortcuts.notifications": "avamaks teadete tulpa",
"keyboard_shortcuts.open_media": "et avada meedia",
"keyboard_shortcuts.pinned": "avamaks kinnitatud tuutide nimistut",
"keyboard_shortcuts.profile": "avamaks autori profiili",
"keyboard_shortcuts.reply": "vastamiseks",
@ -241,8 +250,8 @@
"lists.edit.submit": "Muuda pealkiri",
"lists.new.create": "Lisa nimistu",
"lists.new.title_placeholder": "Uus nimistu pealkiri",
"lists.search": "Otsi sinu poolt jälgitavate inimese hulgast",
"lists.subheading": "Sinu nimistud",
"lists.search": "Otsi Teie poolt jälgitavate inimese hulgast",
"lists.subheading": "Teie nimistud",
"load_pending": "{count, plural, one {# uus kirje} other {# uut kirjet}}",
"loading_indicator.label": "Laeb..",
"media_gallery.toggle_visible": "Lülita nähtavus",
@ -251,6 +260,7 @@
"mute_modal.hide_notifications": "Kas peita teated sellelt kasutajalt?",
"navigation_bar.apps": "Mobiilrakendused",
"navigation_bar.blocks": "Blokeeritud kasutajad",
"navigation_bar.bookmarks": "Järjehoidjad",
"navigation_bar.community_timeline": "Kohalik ajajoon",
"navigation_bar.compose": "Koosta uus tuut",
"navigation_bar.direct": "Otsesõnumid",
@ -271,19 +281,22 @@
"navigation_bar.preferences": "Eelistused",
"navigation_bar.public_timeline": "Föderatiivne ajajoon",
"navigation_bar.security": "Turvalisus",
"notification.favourite": "{name} märkis su staatuse lemmikuks",
"notification.follow": "{name} jälgib sind",
"notification.mention": "{name} mainis sind",
"notification.poll": "Küsitlus, milles osalesid, on lõppenud",
"notification.reblog": "{name} upitas su staatust",
"notification.favourite": "{name} märkis Teie staatuse lemmikuks",
"notification.follow": "{name} jälgib nüüd Teid",
"notification.follow_request": "{name} soovib Teid jälgida",
"notification.mention": "{name} mainis Teid",
"notification.own_poll": "Teie küsitlus on lõppenud",
"notification.poll": "Küsitlus, milles osalesite, on lõppenud",
"notification.reblog": "{name} upitas Teie staatust",
"notifications.clear": "Puhasta teated",
"notifications.clear_confirmation": "Oled kindel, et soovid püsivalt kõik oma teated puhastada?",
"notifications.clear_confirmation": "Olete kindel, et soovite püsivalt kõik oma teated eemaldada?",
"notifications.column_settings.alert": "Töölauateated",
"notifications.column_settings.favourite": "Lemmikud:",
"notifications.column_settings.filter_bar.advanced": "Kuva kõik kategooriad",
"notifications.column_settings.filter_bar.category": "Kiirfiltri riba",
"notifications.column_settings.filter_bar.show": "Kuva",
"notifications.column_settings.follow": "Uued jälgijad:",
"notifications.column_settings.follow_request": "Uued jälgimistaotlused:",
"notifications.column_settings.mention": "Mainimised:",
"notifications.column_settings.poll": "Küsitluse tulemused:",
"notifications.column_settings.push": "Push teated",
@ -299,10 +312,10 @@
"notifications.group": "{count} teated",
"poll.closed": "Suletud",
"poll.refresh": "Värskenda",
"poll.total_people": "{count, plural, one {# person} other {# people}}",
"poll.total_people": "{count, plural,one {# inimene} other {# inimest}}",
"poll.total_votes": "{count, plural, one {# hääl} other {# hääli}}",
"poll.vote": "Hääleta",
"poll.voted": "You voted for this answer",
"poll.voted": "Teie hääletasite selle poolt",
"poll_button.add_poll": "Lisa küsitlus",
"poll_button.remove_poll": "Eemalda küsitlus",
"privacy.change": "Muuda staatuse privaatsust",
@ -314,18 +327,19 @@
"privacy.public.short": "Avalik",
"privacy.unlisted.long": "Ära postita avalikele ajajoontele",
"privacy.unlisted.short": "Määramata",
"refresh": "Refresh",
"refresh": "Värskenda",
"regeneration_indicator.label": "Laeb…",
"regeneration_indicator.sublabel": "Sinu kodu voog on ettevalmistamisel!",
"regeneration_indicator.sublabel": "Teie kodu voog on ettevalmistamisel!",
"relative_time.days": "{number}p",
"relative_time.hours": "{number}t",
"relative_time.just_now": "nüüd",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "täna",
"reply_indicator.cancel": "Tühista",
"report.forward": "Edasta kasutajale {target}",
"report.forward_hint": "See kasutaja on teisest serverist. Kas saadan anonümiseeritud koopia sellest teatest sinna ka?",
"report.hint": "See teade saadetakse sinu serveri moderaatoritele. Te saate lisada selgituse selle kohta, miks selle kasutaja kohta teate esitasite, siin:",
"report.hint": "See teade saadetakse Teie serveri moderaatoritele. Te saate lisada selgituse selle kohta, miks selle kasutaja kohta teate esitasite, siin:",
"report.placeholder": "Lisaks kommentaarid",
"report.submit": "Saada",
"report.target": "Teatamine {target} kohta",
@ -344,6 +358,7 @@
"status.admin_account": "Ava moderaatoriliides kasutajale @{name}",
"status.admin_status": "Ava see staatus moderaatoriliites",
"status.block": "Blokeeri @{name}",
"status.bookmark": "Järjehoidja",
"status.cancel_reblog_private": "Äraupita",
"status.cannot_reblog": "Seda postitust ei saa upitada",
"status.copy": "Kopeeri link staatusesse",
@ -368,6 +383,7 @@
"status.reblogged_by": "{name} upitatud",
"status.reblogs.empty": "Keegi pole seda tuuti veel upitanud. Kui keegi upitab, näed seda siin.",
"status.redraft": "Kustuta & alga uuesti",
"status.remove_bookmark": "Eemalda järjehoidja",
"status.reply": "Vasta",
"status.replyAll": "Vasta lõimele",
"status.report": "Raport @{name}",
@ -378,11 +394,11 @@
"status.show_more": "Näita veel",
"status.show_more_all": "Näita enam kõigile",
"status.show_thread": "Kuva lõim",
"status.uncached_media_warning": "Not available",
"status.uncached_media_warning": "Pole saadaval",
"status.unmute_conversation": "Ära vaigista vestlust",
"status.unpin": "Kinnita profiililt lahti",
"suggestions.dismiss": "Eira soovitust",
"suggestions.header": "Sind võib huvitada…",
"suggestions.header": "Teid võib huvitada…",
"tabs_bar.federated_timeline": "Föderatiivne",
"tabs_bar.home": "Kodu",
"tabs_bar.local_timeline": "Kohalik",
@ -394,24 +410,27 @@
"time_remaining.moments": "Hetked jäänud",
"time_remaining.seconds": "{number, plural, one {# sekund} other {# sekundit}} left",
"trends.count_by_accounts": "{count} {rawCount, plural, one {inimene} other {inimesed}} talking",
"trends.trending_now": "Trending now",
"ui.beforeunload": "Sinu mustand läheb kaotsi, kui lahkud Mastodonist.",
"trends.trending_now": "Praegu populaarne",
"ui.beforeunload": "Teie mustand läheb kaotsi, kui lahkute Mastodonist.",
"upload_area.title": "Lohista & aseta üleslaadimiseks",
"upload_button.label": "Lisa meedia (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Faili üleslaadimise limiit ületatud.",
"upload_error.poll": "Küsitlustes pole faili üleslaadimine lubatud.",
"upload_form.audio_description": "Kirjelda kuulmispuudega inimeste jaoks",
"upload_form.description": "Kirjelda vaegnägijatele",
"upload_form.edit": "Edit",
"upload_form.edit": "Redigeeri",
"upload_form.undo": "Kustuta",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
"upload_modal.detect_text": "Detect text from picture",
"upload_modal.edit_media": "Edit media",
"upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
"upload_modal.preview_label": "Preview ({ratio})",
"upload_form.video_description": "Kirjelda kuulmis- või nägemispuudega inimeste jaoks",
"upload_modal.analyzing_picture": "Analüüsime pilti…",
"upload_modal.apply": "Rakenda",
"upload_modal.description_placeholder": "Kiire pruun rebane hüppab üle laisa koera",
"upload_modal.detect_text": "Tuvasta teksti pildilt",
"upload_modal.edit_media": "Muuda meediat",
"upload_modal.hint": "Vajuta või tõmba ringi eelvaatel, et valida fookuspunkti, mis on alati nähtaval kõikidel eelvaadetel.",
"upload_modal.preview_label": "Eelvaade ({ratio})",
"upload_progress.label": "Laeb üles....",
"video.close": "Sulge video",
"video.download": "Faili allalaadimine",
"video.exit_fullscreen": "Välju täisekraanist",
"video.expand": "Suurenda video",
"video.fullscreen": "Täisekraan",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Gehitu edo kendu zerrendetatik",
"account.badges.bot": "Bot-a",
"account.badges.group": "Taldea",
"account.block": "Blokeatu @{name}",
"account.block_domain": "Ezkutatu {domain} domeinuko guztia",
"account.blocked": "Blokeatuta",
@ -39,9 +40,10 @@
"account.unmute": "Desmututu @{name}",
"account.unmute_notifications": "Desmututu @{name}(r)en jakinarazpenak",
"alert.rate_limited.message": "Saiatu {retry_time, time, medium} barru.",
"alert.rate_limited.title": "Rate limited",
"alert.rate_limited.title": "Abiadura mugatua",
"alert.unexpected.message": "Ustekabeko errore bat gertatu da.",
"alert.unexpected.title": "Ene!",
"announcement.announcement": "Iragarpena",
"autosuggest_hashtag.per_week": "{count} asteko",
"boost_modal.combo": "{combo} sakatu dezakezu hurrengoan hau saltatzeko",
"bundle_column_error.body": "Zerbait okerra gertatu da osagai hau kargatzean.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Zerbait okerra gertatu da osagai hau kargatzean.",
"bundle_modal_error.retry": "Saiatu berriro",
"column.blocks": "Blokeatutako erabiltzaileak",
"column.bookmarks": "Laster-markak",
"column.community": "Denbora-lerro lokala",
"column.direct": "Mezu zuzenak",
"column.directory": "Arakatu profilak",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Inkestaren iraupena",
"compose_form.poll.option_placeholder": "{number}. aukera",
"compose_form.poll.remove_option": "Kendu aukera hau",
"compose_form.poll.switch_to_multiple": "Aldatu inkesta hainbat aukera onartzeko",
"compose_form.poll.switch_to_single": "Aldatu inkesta aukera bakarra onartzeko",
"compose_form.publish": "Toot",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Markatu multimedia hunkigarri gisa",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Ez dago toot-ik hemen!",
"empty_column.account_unavailable": "Profila ez dago eskuragarri",
"empty_column.blocks": "Ez duzu erabiltzailerik blokeatu oraindik.",
"empty_column.bookmarked_statuses": "Oraindik ez dituzu toot laster-markatutarik. Bat laster-markatzerakoan, hemen agertuko da.",
"empty_column.community": "Denbora-lerro lokala hutsik dago. Idatzi zerbait publikoki pilota biraka jartzeko!",
"empty_column.direct": "Ez duzu mezu zuzenik oraindik. Baten bat bidali edo jasotzen duzunean, hemen agertuko da.",
"empty_column.domain_blocks": "Ez dago ezkutatutako domeinurik oraindik.",
@ -154,7 +160,7 @@
"empty_column.public": "Ez dago ezer hemen! Idatzi zerbait publikoki edo jarraitu eskuz beste zerbitzari batzuetako erabiltzaileak hau betetzen joateko",
"error.unexpected_crash.explanation": "Gure kodean arazoren bat dela eta, edo nabigatzailearekin bateragarritasun arazoren bat dela eta, orri hau ezin izan da ongi bistaratu.",
"error.unexpected_crash.next_steps": "Saiatu orria berritzen. Horrek ez badu laguntzen, agian Mastodon erabiltzeko aukera duzu oraindik ere beste nabigatzaile bat edo aplikazio natibo bat erabilita.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.copy_stacktrace": "Kopiatu irteera arbelera",
"errors.unexpected_crash.report_issue": "Eman arazoaren berri",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Oinarrizkoa",
"home.column_settings.show_reblogs": "Erakutsi bultzadak",
"home.column_settings.show_replies": "Erakutsi erantzunak",
"home.hide_announcements": "Ezkutatu iragarpenak",
"home.show_announcements": "Erakutsi iragarpenak",
"intervals.full.days": "{number, plural, one {egun #} other {# egun}}",
"intervals.full.hours": "{number, plural, one {ordu #} other {# ordu}}",
"intervals.full.minutes": "{number, plural, one {minutu #} other {# minutu}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "mutututako erabiltzaileen zerrenda irekitzeko",
"keyboard_shortcuts.my_profile": "zure profila irekitzeko",
"keyboard_shortcuts.notifications": "jakinarazpenen zutabea irekitzeko",
"keyboard_shortcuts.open_media": "media zabaltzeko",
"keyboard_shortcuts.pinned": "finkatutako toot-en zerrenda irekitzeko",
"keyboard_shortcuts.profile": "egilearen profila irekitzeko",
"keyboard_shortcuts.reply": "erantzutea",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Ezkutatu erabiltzaile honen jakinarazpenak?",
"navigation_bar.apps": "Mugikorrerako aplikazioak",
"navigation_bar.blocks": "Blokeatutako erabiltzaileak",
"navigation_bar.bookmarks": "Laster-markak",
"navigation_bar.community_timeline": "Denbora-lerro lokala",
"navigation_bar.compose": "Idatzi toot berria",
"navigation_bar.direct": "Mezu zuzenak",
@ -278,7 +288,9 @@
"navigation_bar.security": "Segurtasuna",
"notification.favourite": "{name}(e)k zure mezua gogoko du",
"notification.follow": "{name}(e)k jarraitzen zaitu",
"notification.follow_request": "{name}(e)k zu jarraitzeko eskaera egin du",
"notification.mention": "{name}(e)k aipatu zaitu",
"notification.own_poll": "Zure inkesta amaitu da",
"notification.poll": "Zuk erantzun duzun inkesta bat bukatu da",
"notification.reblog": "{name}(e)k bultzada eman dio zure mezuari",
"notifications.clear": "Garbitu jakinarazpenak",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Iragazki azkarraren barra",
"notifications.column_settings.filter_bar.show": "Erakutsi",
"notifications.column_settings.follow": "Jarraitzaile berriak:",
"notifications.column_settings.follow_request": "Jarraitzeko eskaera berriak:",
"notifications.column_settings.mention": "Aipamenak:",
"notifications.column_settings.poll": "Inkestaren emaitzak:",
"notifications.column_settings.push": "Push jakinarazpenak",
@ -323,10 +336,11 @@
"regeneration_indicator.label": "Kargatzen…",
"regeneration_indicator.sublabel": "Zure hasiera-jarioa prestatzen ari da!",
"relative_time.days": "{number}e",
"relative_time.hours": "{number}o",
"relative_time.hours": "{number}h",
"relative_time.just_now": "orain",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "gaur",
"reply_indicator.cancel": "Utzi",
"report.forward": "Birbidali hona: {target}",
"report.forward_hint": "Kontu hau beste zerbitzari batekoa da. Bidali txostenaren kopia anonimo hara ere?",
@ -345,10 +359,11 @@
"search_results.hashtags": "Traolak",
"search_results.statuses": "Toot-ak",
"search_results.statuses_fts_disabled": "Mastodon zerbitzari honek ez du Toot-en edukiaren bilaketa gaitu.",
"search_results.total": "{count, number} {count, plural, one {emaitza} other {emaitzak}}",
"search_results.total": "{count, number} {count, plural, one {emaitza} other {emaitza}}",
"status.admin_account": "Ireki @{name} erabiltzailearen moderazio interfazea",
"status.admin_status": "Ireki mezu hau moderazio interfazean",
"status.block": "Blokeatu @{name}",
"status.bookmark": "Laster-marka",
"status.cancel_reblog_private": "Kendu bultzada",
"status.cannot_reblog": "Mezu honi ezin zaio bultzada eman",
"status.copy": "Kopiatu mezuaren esteka",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name}(r)en bultzada",
"status.reblogs.empty": "Ez dio inork bultzada eman toot honi oraindik. Inork egiten duenean, hemen agertuko dira.",
"status.redraft": "Ezabatu eta berridatzi",
"status.remove_bookmark": "Kendu laster-marka",
"status.reply": "Erantzun",
"status.replyAll": "Erantzun harian",
"status.report": "Salatu @{name}",
@ -399,25 +415,28 @@
"time_remaining.minutes": "{number, plural, one {minutu #} other {# minutu}} amaitzeko",
"time_remaining.moments": "Amaitzekotan",
"time_remaining.seconds": "{number, plural, one {segundo #} other {# segundo}} amaitzeko",
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} hitz egiten",
"trends.count_by_accounts": "{count} {rawCount, plural, one {pertsona} other {pertsona}} hitz egiten",
"trends.trending_now": "Joera orain",
"ui.beforeunload": "Zure zirriborroa galduko da Mastodon uzten baduzu.",
"upload_area.title": "Arrastatu eta jaregin igotzeko",
"upload_button.label": "Gehitu multimedia (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Fitxategi igoera muga gaindituta.",
"upload_error.poll": "Ez da inkestetan fitxategiak igotzea onartzen.",
"upload_form.audio_description": "Deskribatu entzumen galera duten pertsonentzat",
"upload_form.description": "Deskribatu ikusmen arazoak dituztenentzat",
"upload_form.edit": "Editatu",
"upload_form.undo": "Ezabatu",
"upload_form.video_description": "Deskribatu entzumen galera edo ikusmen urritasuna duten pertsonentzat",
"upload_modal.analyzing_picture": "Irudia aztertzen…",
"upload_modal.apply": "Aplikatu",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
"upload_modal.detect_text": "Antzeman irudiko testua",
"upload_modal.edit_media": "Editatu multimedia",
"upload_modal.description_placeholder": "Vaudeville itxurako filmean yogi ñaño bat jipoitzen dute Quebec-en whiski truk",
"upload_modal.detect_text": "Antzeman testua iruditik",
"upload_modal.edit_media": "Editatu media",
"upload_modal.hint": "Sakatu eta jaregin aurrebistako zirkulua iruditxoetan beti ikusgai egongo den puntu fokala hautatzeko.",
"upload_modal.preview_label": "Aurreikusi({ratio})",
"upload_modal.preview_label": "Aurreikusi ({ratio})",
"upload_progress.label": "Igotzen...",
"video.close": "Itxi bideoa",
"video.download": "Deskargatu fitxategia",
"video.exit_fullscreen": "Irten pantaila osotik",
"video.expand": "Hedatu bideoa",
"video.fullscreen": "Pantaila osoa",

View File

@ -1,47 +1,49 @@
{
"account.add_or_remove_from_list": "افزودن یا برداشتن از فهرست",
"account.add_or_remove_from_list": "افزودن یا برداشتن از فهرستها",
"account.badges.bot": "ربات",
"account.badges.group": "گروه",
"account.block": "مسدودسازی @{name}",
"account.block_domain": "پنهان‌سازی همه چیز از سرور {domain}",
"account.blocked": "مسدود شده",
"account.block_domain": "نهفتن همه چیز از {domain}",
"account.blocked": "مسدود",
"account.cancel_follow_request": "لغو درخواست پیگیری",
"account.direct": "پیغام خصوصی به @{name}",
"account.domain_blocked": "دامین پنهان‌شده",
"account.direct": "پیام خصوصی به @{name}",
"account.domain_blocked": "دامنهٔ نهفته",
"account.edit_profile": "ویرایش نمایه",
"account.endorse": "نمایش در نمایه",
"account.endorse": "معرّفی در نمایه",
"account.follow": "پی بگیرید",
"account.followers": "پیگیران",
"account.followers.empty": "هنوز هیچ کسی پیگیر این کاربر نیست.",
"account.followers": "پیگیران",
"account.followers.empty": "هنوز کسی پیگیر این کاربر نیست.",
"account.follows": "پی می‌گیرد",
"account.follows.empty": "این کاربر هنوز هیچ کسی را پی نمی‌گیرد.",
"account.follows.empty": "این کاربر هنوز پیگیر کسی نیست.",
"account.follows_you": "پیگیر شماست",
"account.hide_reblogs": "پنهان کردن بازبوق‌های @{name}",
"account.hide_reblogs": "نهفتن بازبوق‌های @{name}",
"account.last_status": "آخرین فعالیت",
"account.link_verified_on": "مالکیت این نشانی در تاریخ {date} بررسی شد",
"account.locked_info": "این حساب خصوصی است. صاحب این حساب تصمیم می‌گیرد که چه کسی می‌تواند پیگیرش باشد.",
"account.media": "عکس و ویدیو",
"account.link_verified_on": "مالکیت این پیوند در {date} بررسی شد",
"account.locked_info": "این حساب خصوصی است. صاحبش تصمیم می‌گیرد که چه کسی بتواند پیگیرش باشد.",
"account.media": "رسانه",
"account.mention": "نام‌بردن از @{name}",
"account.moved_to": "{name} منتقل شده است به:",
"account.mute": "بی‌صدا کردن @{name}",
"account.mute_notifications": "بی‌صداکردن اعلان‌ها از طرف @{name}",
"account.muted": "بی‌صداشده",
"account.moved_to": "{name} منتقل شده به:",
"account.mute": "خموشاندن @{name}",
"account.mute_notifications": "خموشاندن اعلان‌ها از @{name}",
"account.muted": "خموش",
"account.never_active": "هرگز",
"account.posts": "نوشته‌ها",
"account.posts_with_replies": "نوشته‌ها و پاسخ‌ها",
"account.report": "گزارش @{name}",
"account.requested": "در انتظار پذیرش",
"account.requested": "منتظر پذیرش. برای لغو درخواست پی‌گیری کلیک کنید",
"account.share": "هم‌رسانی نمایهٔ @{name}",
"account.show_reblogs": "نشان‌دادن بازبوق‌های @{name}",
"account.show_reblogs": مایش بازبوق‌های @{name}",
"account.unblock": "رفع انسداد @{name}",
"account.unblock_domain": "رفع پنهان‌سازی از {domain}",
"account.unendorse": "نهفتن از نمایه",
"account.unblock_domain": "رفع نهفتن {domain}",
"account.unendorse": "معرّفی نکردن در نمایه",
"account.unfollow": "پایان پیگیری",
"account.unmute": "باصدا کردن @{name}",
"account.unmute_notifications": "باصداکردن اعلان‌ها از طرف @{name}",
"alert.rate_limited.message": "لطفاً پس از {retry_time, time, medium} دوباره تلاش کنید.",
"account.unmute": "رفع خموشی @{name}",
"account.unmute_notifications": "رفع خموشی اعلان‌ها از @{name}",
"alert.rate_limited.message": "لطفاً پس از {retry_time, time, medium} دوباره بیازمایید.",
"alert.rate_limited.title": "محدودیت تعداد",
"alert.unexpected.message": "خطای پیش‌بینی‌نشده‌ای رخ داد.",
"alert.unexpected.message": "خطایی غیرمنتظره رخ داد.",
"alert.unexpected.title": "ای وای!",
"announcement.announcement": "اعلامیه",
"autosuggest_hashtag.per_week": "{count} در هفته",
"boost_modal.combo": "دکمهٔ {combo} را بزنید تا دیگر این را نبینید",
"bundle_column_error.body": "هنگام بازکردن این بخش خطایی رخ داد.",
@ -50,18 +52,19 @@
"bundle_modal_error.close": "بستن",
"bundle_modal_error.message": "هنگام بازکردن این بخش خطایی رخ داد.",
"bundle_modal_error.retry": "تلاش دوباره",
"column.blocks": "کاربران مسدودشده",
"column.blocks": "کاربران مسدود",
"column.bookmarks": "نشانک‌ها",
"column.community": "نوشته‌های محلی",
"column.direct": "پیغام‌های خصوصی",
"column.direct": "پیام‌های خصوصی",
"column.directory": "مرور نمایه‌ها",
"column.domain_blocks": "دامین‌های پنهان‌شده",
"column.domain_blocks": "دامنه‌های نهفته",
"column.favourites": "پسندیده‌ها",
"column.follow_requests": "درخواست‌های پیگیری",
"column.home": "خانه",
"column.lists": "فهرست‌ها",
"column.mutes": "کاربران بی‌صداشده",
"column.mutes": "کاربران خموش",
"column.notifications": "اعلان‌ها",
"column.pins": "نوشته‌های ثابت",
"column.pins": "بوق‌های ثابت",
"column.public": "نوشته‌های همه‌جا",
"column_back_button.label": "بازگشت",
"column_header.hide_settings": "نهفتن تنظیمات",
@ -71,56 +74,58 @@
"column_header.show_settings": "نمایش تنظیمات",
"column_header.unpin": "رهاکردن",
"column_subheading.settings": "تنظیمات",
"community.column_settings.media_only": "فقط عکس و ویدیو",
"community.column_settings.media_only": "فقط رسانه",
"compose_form.direct_message_warning": "این بوق تنها به کاربرانی که از آن‌ها نام برده شده فرستاده خواهد شد.",
"compose_form.direct_message_warning_learn_more": "بیشتر بدانید",
"compose_form.hashtag_warning": "از آن‌جا که این بوق فهرست‌نشده است، در نتایج جستجوی هشتگ‌ها پیدا نخواهد شد. تنها بوق‌های عمومی را می‌توان با جستجوی هشتگ پیدا کرد.",
"compose_form.lock_disclaimer": "حساب شما {locked} نیست. هر کسی می‌تواند پیگیر شما شود و نوشته‌های ویژهٔ پیگیران شما را ببیند.",
"compose_form.hashtag_warning": "از آن‌جا که این بوق فهرست‌نشده است، در نتایج جست‌وجوی هشتگ‌ها پیدا نخواهد شد. تنها بوق‌های عمومی را می‌توان با جست‌وجوی هشتگ یافت.",
"compose_form.lock_disclaimer": "حسابتان {locked} نیست. هر کسی می‌تواند پیگیرتان شده و فرسته‌های ویژهٔ پیگیرانتان را ببیند.",
"compose_form.lock_disclaimer.lock": "قفل",
"compose_form.placeholder": "تازه چه خبر؟",
"compose_form.poll.add_option": "افزودن گزینه",
"compose_form.poll.duration": "مدت نظرسنجی",
"compose_form.poll.option_placeholder": "گزینهٔ {number}",
"compose_form.poll.remove_option": "حذف این گزینه",
"compose_form.poll.remove_option": "برداشتن این گزینه",
"compose_form.poll.switch_to_multiple": "تبدیل به نظرسنجی چندگزینه‌ای",
"compose_form.poll.switch_to_single": "تبدیل به نظرسنجی تک‌گزینه‌ای",
"compose_form.publish": "بوق",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "علامت‌گذاری به عنوان حساس",
"compose_form.sensitive.marked": "این تصویر به عنوان حساس علامت‌گذاری شده",
"compose_form.sensitive.unmarked": "این تصویر به عنوان حساس علامت‌گذاری نشده",
"compose_form.spoiler.marked": "نوشته پشت هشدار محتوا پنهان است",
"compose_form.sensitive.marked": "رسانه به عنوان حساس علامت‌گذاری شده",
"compose_form.sensitive.unmarked": "رسانه به عنوان حساس علامت‌گذاری نشده",
"compose_form.spoiler.marked": "نوشته پشت هشدار پنهان است",
"compose_form.spoiler.unmarked": "نوشته پنهان نیست",
"compose_form.spoiler_placeholder": "هشدار محتوا",
"compose_form.spoiler_placeholder": "هشدارتان را این‌جا بنویسید",
"confirmation_modal.cancel": "بی‌خیال",
"confirmations.block.block_and_report": "مسدودسازی و گزارش",
"confirmations.block.confirm": "مسدود کن",
"confirmations.block.message": "آیا واقعاً می‌خواهید {name} را مسدود کنید؟",
"confirmations.block.message": "مطمئنید که می‌خواهید {name} را مسدود کنید؟",
"confirmations.delete.confirm": "پاک کن",
"confirmations.delete.message": "آیا واقعاً می‌خواهید این نوشته را پاک کنید؟",
"confirmations.delete.message": "آیا مطمئنید که می‌خواهید این بوق را پاک کنید؟",
"confirmations.delete_list.confirm": "پاک کن",
"confirmations.delete_list.message": "آیا واقعاً می‌خواهید این فهرست را برای همیشه پاک کنید؟",
"confirmations.domain_block.confirm": "پنهان‌سازی کل دامین",
"confirmations.domain_block.message": "آیا جدی جدی می‌خواهید کل دامین {domain} را مسدود کنید؟ بیشتر وقت‌ها مسدودکردن یا بی‌صداکردن چند حساب کاربری خاص کافی است و توصیه می‌شود. پس از این کار شما هیچ نوشته‌ای را از این دامین در فهرست نوشته‌های عمومی یا اعلان‌هایتان نخواهید دید. پیگیران شما از این دامین هم حذف خواهد شد.",
"confirmations.delete_list.message": "مطمئنید می‌خواهید این فهرست را برای همیشه پاک کنید؟",
"confirmations.domain_block.confirm": "نهفتن تمام دامنه",
"confirmations.domain_block.message": "آیا جدی جدی می‌خواهید تمام دامنهٔ {domain} را مسدود کنید؟ در بیشتر موارد مسدودسازی یا خموشاندن چند حساب خاص کافی است و توصیه می‌شود. پس از این کار شما هیچ نوشته‌ای را از این دامنه در فهرست نوشته‌های عمومی یا اعلان‌هایتان نخواهید دید. پیگیرانتان از این دامنه هم حذف خواهند شد.",
"confirmations.logout.confirm": "خروج",
"confirmations.logout.message": "آیا مطمئنید که می‌خواهید خارج شوید؟",
"confirmations.mute.confirm": "بی‌صدا کن",
"confirmations.mute.explanation": "این کار نوشته‌های آن‌ها و نوشته‌هایی را که از آن‌ها نام برده پنهان می‌کند، ولی آن‌ها همچنان اجازه دارند نوشته‌های شما را ببینند و شما را پی بگیرند.",
"confirmations.mute.message": "آیا واقعاً می‌خواهید {name} را بی‌صدا کنید؟",
"confirmations.logout.message": "مطمئنید می‌خواهید خارج شوید؟",
"confirmations.mute.confirm": "خموشاندن",
"confirmations.mute.explanation": "این کار فرسته‌های آن‌ها و فرسته‌هایی را که از آن‌ها نام برده پنهان می‌کند، ولی آن‌ها همچنان اجازه دارند فرسته‌های شما را ببینند و شما را پی بگیرند.",
"confirmations.mute.message": "مطمئنید می‌خواهید {name} را بخموشانید؟",
"confirmations.redraft.confirm": "پاک‌کردن و بازنویسی",
"confirmations.redraft.message": "آیا واقعاً می‌خواهید این نوشته را پاک کنید و آن را از نو بنویسید؟ با این کار بازبوق‌ها و پسندیده‌شدن‌های آن از دست می‌رود و پاسخ‌ها به آن بی‌مرجع می‌شود.",
"confirmations.redraft.message": "مطمئنید که می‌خواهید این بوق را پاک کنید و از نو بنویسید؟ با این کار بازبوق‌ها و پسندهای آن از دست می‌رود و پاسخ‌ها به آن بی‌مرجع می‌شود.",
"confirmations.reply.confirm": "پاسخ",
"confirmations.reply.message": "اگر الان پاسخ دهید، چیزی که در حال نوشتنش بودید پاک خواهد شد. آیا همین را می‌خواهید؟",
"confirmations.unfollow.confirm": "لغو پیگیری",
"confirmations.unfollow.message": "آیا واقعاً می‌خواهید به پیگیری از {name} پایان دهید؟",
"confirmations.reply.message": "اگر الان پاسخ دهید، چیزی که در حال نوشتنش بودید پاک خواهد شد. می‌خواهید ادامه دهید؟",
"confirmations.unfollow.confirm": "پایان پیگیری",
"confirmations.unfollow.message": "مطمئنید که می‌خواهید به پیگیری از {name} پایان دهید؟",
"conversation.delete": "حذف گفتگو",
"conversation.mark_as_read": "علامت‌گذاری به عنوان خوانده شده",
"conversation.open": "دیدن گفتگو",
"conversation.with": "با {names}",
"directory.federated": "از سرورهای همسایه",
"directory.federated": "از کارسازهای شناخته‌شده",
"directory.local": "تنها از {domain}",
"directory.new_arrivals": "تازه‌واردان",
"directory.recently_active": "کاربران فعال اخیر",
"embed.instructions": "برای جاگذاری این نوشته در سایت خودتان، کد زیر را کپی کنید.",
"embed.preview": "نوشتهٔ جاگذاری‌شده این گونه به نظر خواهد رسید:",
"embed.instructions": "برای جاگذاری این بوق در سایت خودتان، کد زیر را کپی کنید.",
"embed.preview": "این گونه دیده خواهد شد:",
"emoji_button.activity": "فعالیت",
"emoji_button.custom": "سفارشی",
"emoji_button.flags": "پرچم‌ها",
@ -130,47 +135,48 @@
"emoji_button.not_found": "این‌جا شکلکی نیست!! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "اشیا",
"emoji_button.people": "مردم",
"emoji_button.recent": "زیاد به‌کاررفته",
"emoji_button.recent": "پراستفاده",
"emoji_button.search": "جستجو...",
"emoji_button.search_results": "نتایج جستجو",
"emoji_button.symbols": "نمادها",
"emoji_button.travel": "سفر و مکان",
"empty_column.account_timeline": "هیچ بوقی این‌جا نیست!",
"empty_column.account_unavailable": "نمایهٔ ناموجود",
"empty_column.blocks": "شما هنوز هیچ کسی را مسدود نکرده‌اید.",
"empty_column.blocks": "هنوز کسی را مسدود نکرده‌اید.",
"empty_column.bookmarked_statuses": "هنوز هیچ بوق نشان‌شده‌ای ندارید. وقتی بوقی را نشان‌کنید، این‌جا دیده خواهد شد.",
"empty_column.community": "فهرست نوشته‌های محلی خالی است. چیزی بنویسید تا چرخش بچرخد!",
"empty_column.direct": "شما هیچ پیغام مستقیمی ندارید. اگر چنین پیغامی بگیرید یا بفرستید این‌جا نمایش خواهد یافت.",
"empty_column.domain_blocks": "هنوز هیچ دامینی پنهان نشده است.",
"empty_column.direct": "هنوز هیچ پیام مستقیمی ندارید. هروقت چنین پیامی بگیرید یا بفرستید این‌جا نمایش خواهد یافت.",
"empty_column.domain_blocks": "هنوز هیچ دامنهای پنهان نشده است.",
"empty_column.favourited_statuses": "شما هنوز هیچ بوقی را نپسندیده‌اید. وقتی بوقی را بپسندید، این‌جا نمایش خواهد یافت.",
"empty_column.favourites": "هنوز هیچ کسی این بوق را نپسندیده است. وقتی کسی آن را بپسندد، نامش این‌جا نمایش خواهد یافت.",
"empty_column.follow_requests": "شما هنوز هیچ درخواست پیگیری‌ای ندارید. وقتی چنین درخواستی بگیرید، این‌جا نمایش خواهد یافت.",
"empty_column.hashtag": "هنوز هیچ چیزی با این برچسب (هشتگ) نیست.",
"empty_column.home": "شما هنوز پیگیر کسی نیستید. {public} را ببینید یا چیزی را جستجو کنید تا کاربران دیگر را ببینید.",
"empty_column.hashtag": "هنوز هیچ چیزی در این برچسب نیست.",
"empty_column.home": "فهرست خانگی شما خالی است! {public} را ببینید یا چیزی را جستجو کنید تا کاربران دیگر را ببینید.",
"empty_column.home.public_timeline": "فهرست نوشته‌های همه‌جا",
"empty_column.list": "در این فهرست هنوز چیزی نیست. وقتی اعضای این فهرست چیزی بنویسند، این‌جا ظاهر خواهد شد.",
"empty_column.lists": "شما هنوز هیچ فهرستی ندارید. اگر فهرستی بسازید، این‌جا نمایش خواهد یافت.",
"empty_column.mutes": "شما هنوز هیچ کاربری را بی‌صدا نکرده‌اید.",
"empty_column.notifications": "هنوز هیچ اعلانی ندارید. به نوشته‌های دیگران واکنش نشان دهید تا گفتگو آغاز شود.",
"empty_column.public": "این‌جا هنوز چیزی نیست! خودتان چیزی بنویسید یا کاربران سرورهای دیگر را پی بگیرید تا این‌جا پر شود",
"empty_column.list": "در این فهرست هنوز چیزی نیست. وقتی اعضای این فهرست چیزی بفرستند، این‌جا ظاهر خواهد شد.",
"empty_column.lists": "هنوز هیچ فهرستی ندارید. هنگامی که فهرستی بسازید، این‌جا دیده خواهد شد.",
"empty_column.mutes": "هنوز هیچ کاربری را خموش نکرده‌اید.",
"empty_column.notifications": "هنوز هیچ اعلانی ندارید. به دیگران واکنش نشان دهید تا گفتگو آغاز شود.",
"empty_column.public": "این‌جا هنوز چیزی نیست! خودتان چیزی بنویسید یا کاربران کارسازهای دیگر را پی بگیرید تا این‌جا پر شود",
"error.unexpected_crash.explanation": "به خاطر اشکالی در کدهای ما یا ناسازگاری با مرورگر شما، این صفحه به درستی نمایش نیافت.",
"error.unexpected_crash.next_steps": "لطفاً صفحه را دوباره باز کنید. اگر آن هم کمکی نکرد، همچنان شاید بتوانید با ماستدون از راه یکی از اپ‌های آن کار کنید.",
"errors.unexpected_crash.copy_stacktrace": "کپی جزئیات اشکال",
"errors.unexpected_crash.report_issue": "گزارش اشکال",
"error.unexpected_crash.next_steps": "لطفاً صفحه را دوباره باز کنید. اگر کمکی نکرد، شاید همچنان بتوانید با ماستودون از راه یک مرورگر دیگر یا با یکی از اپ‌های آن کار کنید.",
"errors.unexpected_crash.copy_stacktrace": "رونوشت از جزئیات اشکال",
"errors.unexpected_crash.report_issue": "گزارش مشکل",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
"federation.federated.short": "Federated",
"federation.local_only.long": "Restrict this toot only to my instance",
"federation.local_only.short": "Local-only",
"follow_request.authorize": "اجازه دهید",
"follow_request.reject": "اجازه ندهید",
"getting_started.developers": "برای برنامه‌نویسان",
"follow_request.reject": "رد کنید",
"getting_started.developers": "توسعه‌دهندگان",
"getting_started.directory": "فهرست گزیدهٔ کاربران",
"getting_started.documentation": "راهنما",
"getting_started.documentation": "مستندات",
"getting_started.heading": "آغاز کنید",
"getting_started.invite": "دعوت از دوستان",
"getting_started.open_source_notice": "ماستدون یک نرم‌افزار آزاد است. می‌توانید در ساخت آن مشارکت کنید یا مشکلاتش را در {github} گزارش دهید.",
"getting_started.security": "امنیت",
"getting_started.terms": "شرایط استفاده",
"getting_started.invite": "دعوت از دیگران",
"getting_started.open_source_notice": "ماستودون نرم‌افزاری آزاد است. می‌توانید روی {github} در آن مشارکت کرده یا مشکلاتش را گزارش دهید.",
"getting_started.security": "تنظیمات حساب",
"getting_started.terms": "شرایط خدمات",
"hashtag.column_header.tag_mode.all": "و {additional}",
"hashtag.column_header.tag_mode.any": "یا {additional}",
"hashtag.column_header.tag_mode.none": "بدون {additional}",
@ -179,41 +185,43 @@
"hashtag.column_settings.tag_mode.all": "همهٔ این‌ها",
"hashtag.column_settings.tag_mode.any": "هرکدام از این‌ها",
"hashtag.column_settings.tag_mode.none": "هیچ‌کدام از این‌ها",
"hashtag.column_settings.tag_toggle": "برچسب‌های بیشتری به این ستون بیفزایید",
"home.column_settings.basic": "اصلی",
"hashtag.column_settings.tag_toggle": "افزودن برچسب‌هایی بیشتر به این ستون",
"home.column_settings.basic": "پایه‌ای",
"home.column_settings.show_reblogs": "نمایش بازبوق‌ها",
"home.column_settings.show_replies": "نمایش پاسخ‌ها",
"home.hide_announcements": "نهفتن اعلامیه‌ها",
"home.show_announcements": "نمایش اعلامیه‌ها",
"intervals.full.days": "{number, plural, one {# روز} other {# روز}}",
"intervals.full.hours": "{number, plural, one {# ساعت} other {# ساعت}}",
"intervals.full.minutes": "{number, plural, one {# دقیقه} other {# دقیقه}}",
"introduction.federation.action": "بعدی",
"introduction.federation.federated.headline": "فهرست همهٔ سرورها",
"introduction.federation.federated.text": "نوشته‌های عمومی سرورهای دیگر در این فهرست نمایش می‌یابند.",
"introduction.federation.federated.headline": "همگانی",
"introduction.federation.federated.text": "نوشته‌های عمومی کارسازهای دیگر در این فهرست نمایش می‌یابند.",
"introduction.federation.home.headline": "خانه",
"introduction.federation.home.text": "نوشته‌های کسانی که شما آن‌ها را پی می‌گیرید این‌جا نمایش می‌یابند. شما می‌توانید هر کسی را از هر سروری پی بگیرید!",
"introduction.federation.local.headline": "محلی",
"introduction.federation.local.text": "نوشته‌های عمومی کسانی که روی سرور شما هستند در فهرست نوشته‌های محلی نمایش می‌یابند.",
"introduction.federation.home.text": "فرسته‌های کسانی که شما آن‌ها را پی می‌گیرید این‌جا نمایش می‌یابند. شما می‌توانید هر کسی را روی هر کارسازی پی بگیرید!",
"introduction.federation.local.headline": "محلّی",
"introduction.federation.local.text": "فرسته‌های عمومی کسانی که روی کارساز شما هستند در فهرست نوشته‌های محلی نمایش می‌یابند.",
"introduction.interactions.action": "پایان خودآموز!",
"introduction.interactions.favourite.headline": "پسندیدن",
"introduction.interactions.favourite.text": "با پسندیدن یک بوق، شما آن را برای آینده ذخیره می‌کنید و به نویسنده می‌گویید که از بوقش خوشتان آمده.",
"introduction.interactions.reblog.headline": "بازبوقیدن",
"introduction.interactions.reblog.text": "اگر بخواهید نوشته‌ای را با پیگیران خودتان به اشتراک بگذارید، آن را بازمی‌بوقید.",
"introduction.interactions.reply.headline": "پاسخ",
"introduction.interactions.reply.text": "شما می‌توانید به بوق‌های خودتان و دیگران پاسخ دهید، تا همهٔ این بوق‌ها به شکل رشتهٔ به‌هم‌پیوسته‌ای در یک گفتگو درآیند.",
"introduction.interactions.reply.text": "می‌توانید به بوق‌های خودتان و دیگران پاسخ دهید، تا در یک گفتگو به هم زنجیر شوند.",
"introduction.welcome.action": "بزن بریم!",
"introduction.welcome.headline": "نخستین گام‌ها",
"introduction.welcome.text": "به دنیای شبکه‌های اجتماعی غیرمتمرکز خوش آمدید! به زودی می‌توانید نوشته‌های خودتان را منتشر کنید و با دوستانتان که روی سرورهای مختلفی هستند حرف بزنید. ولی این سرور، {domain}، با بقیه فرق دارد زیرا حساب شما روی آن ساخته شده است، پس نامش را یادتان نگه دارید.",
"introduction.welcome.text": "به دنیای شبکه‌های اجتماعی غیرمتمرکز خوش آمدید! به زودی می‌توانید نوشته‌هایتان را منتشر کرده و با دوستانتان روی دامنهٔ وسیعی از کارسازها حرف بزنید. ولی این کارساز، {domain}، با بقیه فرق دارد، چرا که میزبان نمایهٔ شماست، پس نامش را به خاطر بسپارید.",
"keyboard_shortcuts.back": "برای بازگشت",
"keyboard_shortcuts.blocked": "برای گشودن کاربران بی‌صداشده",
"keyboard_shortcuts.blocked": "برای گشودن فهرست کاربران خموش",
"keyboard_shortcuts.boost": "برای بازبوقیدن",
"keyboard_shortcuts.column": "برای برجسته‌کردن یک نوشته در یکی از ستون‌ها",
"keyboard_shortcuts.compose": "برای فعال‌کردن کادر نوشتهٔ تازه",
"keyboard_shortcuts.column": "برای تمرکز روی یک بوق در یکی از ستون‌ها",
"keyboard_shortcuts.compose": "برای تمرکز روی محیط نوشتن",
"keyboard_shortcuts.description": "توضیح",
"keyboard_shortcuts.direct": "برای گشودن ستون پیغام‌های مستقیم",
"keyboard_shortcuts.down": "برای پایینرفتن در فهرست",
"keyboard_shortcuts.down": "برای پایین رفتن در فهرست",
"keyboard_shortcuts.enter": "برای گشودن نوشته",
"keyboard_shortcuts.favourite": "برای پسندیدن",
"keyboard_shortcuts.favourites": "برای گشودن پیغام‌های پسندیده‌شده",
"keyboard_shortcuts.favourites": "برای گشودن فهرست پسندیده‌ها",
"keyboard_shortcuts.federated": "برای گشودن فهرست نوشته‌های همه‌جا",
"keyboard_shortcuts.heading": "میان‌برهای صفحه‌کلید",
"keyboard_shortcuts.home": "برای گشودن ستون اصلی پیگیری‌ها",
@ -221,31 +229,32 @@
"keyboard_shortcuts.legend": "برای نمایش این راهنما",
"keyboard_shortcuts.local": "برای گشودن فهرست نوشته‌های محلی",
"keyboard_shortcuts.mention": "برای نام‌بردن از نویسنده",
"keyboard_shortcuts.muted": "برای گشودن فهرست کاربران بی‌صداشده",
"keyboard_shortcuts.my_profile": "برای گشودن صفحهٔ نمایهٔ شما",
"keyboard_shortcuts.muted": "برای گشودن فهرست کاربران خموش",
"keyboard_shortcuts.my_profile": "برای گشودن نمایه‌تان",
"keyboard_shortcuts.notifications": "برای گشودن ستون اعلان‌ها",
"keyboard_shortcuts.pinned": "برای گشودن فهرست نوشته‌‌های ثابت",
"keyboard_shortcuts.profile": "گشودن نمایهٔ نویسنده",
"keyboard_shortcuts.reply": "برای پاسخ‌دادن",
"keyboard_shortcuts.open_media": "برای باز کردن رسانه",
"keyboard_shortcuts.pinned": "برای گشودن فهرست بوق‌های ثابت",
"keyboard_shortcuts.profile": "برای گشودن نمایهٔ نویسنده",
"keyboard_shortcuts.reply": "برای پاسخ",
"keyboard_shortcuts.requests": "برای گشودن فهرست درخواست‌های پیگیری",
"keyboard_shortcuts.search": "برای فعال‌کردن جستجو",
"keyboard_shortcuts.search": "برای تمرکز روی جستجو",
"keyboard_shortcuts.start": "برای گشودن ستون «آغاز کنید»",
"keyboard_shortcuts.toggle_hidden": "برای نمایش/نهفتن نوشتهٔ پشت هشدار محتوا",
"keyboard_shortcuts.toggle_sensitivity": "برای نمایش/نهفتن عکس و ویدیو",
"keyboard_shortcuts.toggle_sensitivity": "برای نمایش/نهفتن رسانه",
"keyboard_shortcuts.toot": "برای آغاز یک بوق تازه",
"keyboard_shortcuts.unfocus": "برای برداشتن توجه از نوشتن/جستجو",
"keyboard_shortcuts.unfocus": "برای برداشتن تمرکز از نوشتن/جستجو",
"keyboard_shortcuts.up": "برای بالا رفتن در فهرست",
"lightbox.close": "بستن",
"lightbox.next": "بعدی",
"lightbox.previous": "قبلی",
"lightbox.view_context": "نمایش گفتگو",
"lists.account.add": "افزودن به فهرست",
"lists.account.remove": "پاک‌کردن از فهرست",
"lists.account.remove": "برداشتن از فهرست",
"lists.delete": "حذف فهرست",
"lists.edit": "ویرایش فهرست",
"lists.edit.submit": "تغییر عنوان",
"lists.new.create": "افزودن فهرست",
"lists.new.title_placeholder": ام فهرست تازه",
"lists.new.title_placeholder": "عنوان فهرست تازه",
"lists.search": "بین کسانی که پی می‌گیرید بگردید",
"lists.subheading": "فهرست‌های شما",
"load_pending": "{count, plural, one {# مورد تازه} other {# مورد تازه}}",
@ -256,39 +265,43 @@
"mute_modal.hide_notifications": "اعلان‌های این کاربر پنهان شود؟",
"navigation_bar.apps": "اپ‌های موبایل",
"navigation_bar.blocks": "کاربران مسدودشده",
"navigation_bar.bookmarks": "نشانک‌ها",
"navigation_bar.community_timeline": "نوشته‌های محلی",
"navigation_bar.compose": "نوشتن بوق تازه",
"navigation_bar.direct": "پیغام‌های مستقیم",
"navigation_bar.direct": "پیام‌های مستقیم",
"navigation_bar.discover": "گشت و گذار",
"navigation_bar.domain_blocks": "دامین‌های پنهان‌شده",
"navigation_bar.domain_blocks": "دامنه‌های نهفته",
"navigation_bar.edit_profile": "ویرایش نمایه",
"navigation_bar.favourites": "پسندیده‌ها",
"navigation_bar.filters": "واژگان بی‌صداشده",
"navigation_bar.filters": "واژگان خموش",
"navigation_bar.follow_requests": "درخواست‌های پیگیری",
"navigation_bar.follows_and_followers": "پیگیری‌ها و پیگیران",
"navigation_bar.info": "دربارهٔ این سرور",
"navigation_bar.keyboard_shortcuts": "میان‌برهای صفحه‌کلید",
"navigation_bar.info": "دربارهٔ این کارساز",
"navigation_bar.keyboard_shortcuts": "میان‌برها",
"navigation_bar.lists": "فهرست‌ها",
"navigation_bar.logout": "خروج",
"navigation_bar.mutes": "کاربران بی‌صداشده",
"navigation_bar.mutes": "کاربران خموشانده",
"navigation_bar.personal": "شخصی",
"navigation_bar.pins": "نوشته‌های ثابت",
"navigation_bar.pins": "بوق‌های ثابت",
"navigation_bar.preferences": "ترجیحات",
"navigation_bar.public_timeline": "نوشته‌های همه‌جا",
"navigation_bar.security": "امنیت",
"notification.favourite": "{name} نوشتهٔ شما را پسندید",
"notification.follow": "{name} پیگیر شما شد",
"notification.follow": "{name} پیگیرتان شد",
"notification.follow_request": "{name} می‌خواهد پیگیر شما باشد",
"notification.mention": "{name} از شما نام برد",
"notification.own_poll": "نظرسنجی شما به پایان رسید",
"notification.poll": "نظرسنجی‌ای که در آن رأی دادید به پایان رسیده است",
"notification.reblog": "{name} نوشتهٔ شما را بازبوقید",
"notifications.clear": "پاک‌کردن اعلان‌ها",
"notifications.clear_confirmation": "واقعاً می‌خواهید همهٔ اعلان‌هایتان را برای همیشه پاک کنید؟",
"notifications.column_settings.alert": "اعلان در کامپیوتر",
"notifications.clear_confirmation": "مطمئنید می‌خواهید همهٔ اعلان‌هایتان را برای همیشه پاک کنید؟",
"notifications.column_settings.alert": "اعلان‌های میزکار",
"notifications.column_settings.favourite": "پسندیده‌ها:",
"notifications.column_settings.filter_bar.advanced": "نمایش همهٔ گروهها",
"notifications.column_settings.filter_bar.category": "فیلتر سریع",
"notifications.column_settings.filter_bar.advanced": "نمایش همهٔ دستهها",
"notifications.column_settings.filter_bar.category": "نوار پالایش سریع",
"notifications.column_settings.filter_bar.show": "نمایش",
"notifications.column_settings.follow": "پیگیران تازه:",
"notifications.column_settings.follow_request": "درخواست‌های جدید پی‌گیری:",
"notifications.column_settings.mention": "نام‌بردن‌ها:",
"notifications.column_settings.poll": "نتایج نظرسنجی:",
"notifications.column_settings.push": "اعلان‌ها از سمت سرور",
@ -297,9 +310,9 @@
"notifications.column_settings.sound": "پخش صدا",
"notifications.filter.all": "همه",
"notifications.filter.boosts": "بازبوق‌ها",
"notifications.filter.favourites": "پسندیده‌ها",
"notifications.filter.favourites": "پسندها",
"notifications.filter.follows": "پیگیری‌ها",
"notifications.filter.mentions": "گفتگوها",
"notifications.filter.mentions": "نام‌بردن‌ها",
"notifications.filter.polls": "نتایج نظرسنجی",
"notifications.group": "{count} اعلان",
"poll.closed": "پایان‌یافته",
@ -310,9 +323,9 @@
"poll.voted": "شما به این گزینه رأی دادید",
"poll_button.add_poll": "افزودن نظرسنجی",
"poll_button.remove_poll": "حذف نظرسنجی",
"privacy.change": "تنظیم حریم خصوصی نوشتهها",
"privacy.change": "تنظیم محرمانگی نوشته",
"privacy.direct.long": "تنها به کاربران نام‌برده‌شده نشان بده",
"privacy.direct.short": "مستقیم",
"privacy.direct.short": "خصوصی",
"privacy.private.long": "تنها به پیگیران نشان بده",
"privacy.private.short": "خصوصی",
"privacy.public.long": "نمایش در فهرست عمومی",
@ -327,46 +340,47 @@
"relative_time.just_now": "الان",
"relative_time.minutes": "{number} دقیقه",
"relative_time.seconds": "{number} ثانیه",
"relative_time.today": "امروز",
"reply_indicator.cancel": "لغو",
"report.forward": "فرستادن به {target}",
"report.forward_hint": "این حساب در سرور دیگری ثبت شده. آیا می‌خواهید رونوشتی از این گزارش به طور ناشناس به آن‌جا هم فرستاده شود؟",
"report.hint": "این گزارش به مدیران سرور شما فرستاده خواهد شد. می‌توانید دلیل گزارش‌دادن این حساب را در این‌جا بنویسید:",
"report.forward_hint": "این حساب در کارساز دیگری ثبت شده. آیا می‌خواهید رونوشتی ناشناس از این گزارش به آن‌جا هم فرستاده شود؟",
"report.hint": "این گزارش به مدیران کارسازتان فرستاده خواهد شد. می‌توانید دلیل گزارش این حساب را در ادامه بنویسید:",
"report.placeholder": "توضیح اضافه",
"report.submit": "بفرست",
"report.target": "گزارش‌دادن",
"report.target": "در حال گزارش {target}",
"search.placeholder": "جستجو",
"search_popout.search_format": "راهنمای جستجوی پیشرفته",
"search_popout.tips.full_text": "جستجوی متنی ساده می‌تواند بوق‌هایی که شما نوشته‌اید، پسندیده‌اید، بازبوقیده‌اید، یا در آن‌ها از شما نام برده شده است را پیدا کند. همچنین نام‌های کاربری، نام نمایش‌یافته، و هشتگ‌ها را هم شامل می‌شود.",
"search_popout.tips.hashtag": "برچسب",
"search_popout.tips.status": "نوشته",
"search_popout.tips.status": "بوق",
"search_popout.tips.text": "جستجوی متنی ساده برای نام‌ها، نام‌های کاربری، و برچسب‌ها",
"search_popout.tips.user": "کاربر",
"search_results.accounts": "افراد",
"search_results.hashtags": "برچسب‌ها",
"search_results.statuses": "بوق‌ها",
"search_results.statuses_fts_disabled": "جستجوی محتوای بوق‌ها در این سرور ماستدون ممکن نیست.",
"search_results.statuses_fts_disabled": "جستجوی محتوای بوق‌ها در این کارساز ماستودون فعال نشده است.",
"search_results.total": "{count, number} {count, plural, one {نتیجه} other {نتیجه}}",
"status.admin_account": "محیط مدیریت مربوط به @{name} را باز کن",
"status.admin_status": "این نوشته را در محیط مدیریت باز کن",
"status.admin_account": "گشودن واسط مدیریت برای @{name}",
"status.admin_status": "گشودن این بوق در واسط مدیریت",
"status.block": "مسدودسازی @{name}",
"status.bookmark": "نشانک",
"status.cancel_reblog_private": "حذف بازبوق",
"status.cannot_reblog": "این نوشته را نمی‌شود بازبوقید",
"status.copy": "رونوشت‌برداری از نشانی این نوشته",
"status.copy": "رونوشت‌برداری از نشانی بوق",
"status.delete": "پاک‌کردن",
"status.detailed_status": "نمایش کامل گفتگو",
"status.direct": "پیغام مستقیم به @{name}",
"status.embed": "جاگذاری",
"status.favourite": "پسندیدن",
"status.filtered": "فیلترشده",
"status.filtered": "پالوده",
"status.load_more": "بیشتر نشان بده",
"status.local_only": "This post is only visible by other users of your instance",
"status.media_hidden": "تصویر پنهان شده",
"status.media_hidden": "رسانهٔ نهفته",
"status.mention": "نام‌بردن از @{name}",
"status.more": "بیشتر",
"status.mute": "بی‌صدا کردن @{name}",
"status.mute_conversation": "بی‌صداکردن گفتگو",
"status.open": "این نوشته را باز کن",
"status.pin": "نوشتهٔ ثابت نمایه",
"status.mute": "خموشاندن @{name}",
"status.mute_conversation": "خموشاندن گفتگو",
"status.open": "گشودن این بوق",
"status.pin": "ثابت کردن در نمایه",
"status.pinned": "بوق ثابت",
"status.read_more": "بیشتر بخوانید",
"status.reblog": "بازبوقیدن",
@ -374,24 +388,25 @@
"status.reblogged_by": "{name} بازبوقید",
"status.reblogs.empty": "هنوز هیچ کسی این بوق را بازنبوقیده است. وقتی کسی چنین کاری کند، این‌جا نمایش خواهد یافت.",
"status.redraft": "پاک‌کردن و بازنویسی",
"status.remove_bookmark": "برداشتن نشانک",
"status.reply": "پاسخ",
"status.replyAll": "به نوشته پاسخ دهید",
"status.report": "گزارش دادن @{name}",
"status.replyAll": "پاسخ به رشته",
"status.report": "گزارش @{name}",
"status.sensitive_warning": "محتوای حساس",
"status.share": "هم‌رسانی",
"status.show_less": هفتن",
"status.show_less": مایش کمتر",
"status.show_less_all": "نمایش کمتر همه",
"status.show_more": "نمایش",
"status.show_more": "نمایش بیشتر",
"status.show_more_all": "نمایش بیشتر همه",
"status.show_thread": "نمایش گفتگو",
"status.show_thread": "نمایش رشته",
"status.uncached_media_warning": "ناموجود",
"status.unmute_conversation": "باصداکردن گفتگو",
"status.unmute_conversation": "رفع خموشی گفتگو",
"status.unpin": "برداشتن نوشتهٔ ثابت نمایه",
"suggestions.dismiss": "پیشنهاد را نادیده بگیر",
"suggestions.dismiss": "نادیده گرفتن پیشنهاد",
"suggestions.header": "شاید این هم برایتان جالب باشد…",
"tabs_bar.federated_timeline": "همگانی",
"tabs_bar.home": "خانه",
"tabs_bar.local_timeline": "محلی",
"tabs_bar.local_timeline": "محلّی",
"tabs_bar.notifications": "اعلان‌ها",
"tabs_bar.search": "جستجو",
"time_remaining.days": "{number, plural, one {# روز} other {# روز}} باقی مانده",
@ -401,29 +416,32 @@
"time_remaining.seconds": "{number, plural, one {# ثانیه} other {# ثانیه}} باقی مانده",
"trends.count_by_accounts": "{count} {rawCount, plural, one {نفر نوشته است} other {نفر نوشته‌اند}}",
"trends.trending_now": "پرطرفدار",
"ui.beforeunload": "اگر از ماستدون خارج شوید پیش‌نویس شما پاک خواهد شد.",
"ui.beforeunload": "اگر از ماستودون خارج شوید پیش‌نویس شما از دست خواهد رفت.",
"upload_area.title": "برای بارگذاری به این‌جا بکشید",
"upload_button.label": "افزودن عکس و ویدیو (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "از حد مجاز باگذاری فراتر رفتید.",
"upload_error.poll": "باگذاری پرونده در نظرسنجی‌ها ممکن نیست.",
"upload_form.description": "نوشتهٔ توضیحی برای کم‌بینایان و نابینایان",
"upload_button.label": "افزودن رسانه ({formats})",
"upload_error.limit": "از حد مجاز باگذاری پرونده فراتر رفتید.",
"upload_error.poll": "بارگذاری پرونده در نظرسنجی‌ها مجاز نیست.",
"upload_form.audio_description": "برای ناشنوایان توصیفش کنید",
"upload_form.description": "برای کم‌بینایان توصیفش کنید",
"upload_form.edit": "ویرایش",
"upload_form.undo": "حذف",
"upload_form.video_description": "برای کم‌بینایان یا ناشنوایان توصیفش کنید",
"upload_modal.analyzing_picture": "در حال پردازش تصویر…",
"upload_modal.apply": "اجرا",
"upload_modal.description_placeholder": "مردی با بیل مادرزنش را کشت",
"upload_modal.detect_text": "پیدا کردن نوشته از درون تصویر",
"upload_modal.edit_media": "ویرایش تصویر",
"upload_modal.apply": "اعمال",
"upload_modal.description_placeholder": "الا یا ایّها الساقی، ادر کأساً و ناولها",
"upload_modal.detect_text": "تشخیص متن درون عکس",
"upload_modal.edit_media": "ویرایش رسانه",
"upload_modal.hint": "حتی اگر تصویر بریده یا کوچک شود، نقطهٔ کانونی آن همیشه دیده خواهد شد. نقطهٔ کانونی را با کلیک یا جابه‌جا کردن آن تنظیم کنید.",
"upload_modal.preview_label": "پیش‌نمایش ({ratio})",
"upload_progress.label": "بارگذاری...",
"upload_progress.label": "در حال بارگذاری",
"video.close": "بستن ویدیو",
"video.exit_fullscreen": "خروج از حالت تمام صفحه",
"video.download": "بارگیری پرونده",
"video.exit_fullscreen": "خروج از حالت تمام‌صفحه",
"video.expand": "بزرگ‌کردن ویدیو",
"video.fullscreen": "تمام صفحه",
"video.fullscreen": "تمامصفحه",
"video.hide": "نهفتن ویدیو",
"video.mute": "قطع صدا",
"video.pause": "توقف",
"video.pause": "مکث",
"video.play": "پخش",
"video.unmute": "پخش صدا"
}

View File

@ -1,13 +1,14 @@
{
"account.add_or_remove_from_list": "Lisää tai poista listoilta",
"account.badges.bot": "Botti",
"account.badges.group": "Group",
"account.block": "Estä @{name}",
"account.block_domain": "Piilota kaikki sisältö verkkotunnuksesta {domain}",
"account.blocked": "Estetty",
"account.cancel_follow_request": "Peruuta seurauspyyntö",
"account.direct": "Viesti käyttäjälle @{name}",
"account.domain_blocked": "Verkko-osoite piilotettu",
"account.edit_profile": "Muokkaa",
"account.edit_profile": "Muokkaa profiilia",
"account.endorse": "Suosittele profiilissasi",
"account.follow": "Seuraa",
"account.followers": "Seuraajaa",
@ -39,9 +40,10 @@
"account.unmute": "Poista käyttäjän @{name} mykistys",
"account.unmute_notifications": "Poista mykistys käyttäjän @{name} ilmoituksilta",
"alert.rate_limited.message": "Yritä uudestaan {retry_time, time, medium} jälkeen.",
"alert.rate_limited.title": "Rate limited",
"alert.rate_limited.title": "Määrää rajoitettu",
"alert.unexpected.message": "Tapahtui odottamaton virhe.",
"alert.unexpected.title": "Hups!",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} viikossa",
"boost_modal.combo": "Ensi kerralla voit ohittaa tämän painamalla {combo}",
"bundle_column_error.body": "Jokin meni vikaan komponenttia ladattaessa.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Jokin meni vikaan komponenttia ladattaessa.",
"bundle_modal_error.retry": "Yritä uudestaan",
"column.blocks": "Estetyt käyttäjät",
"column.bookmarks": "Kirjanmerkit",
"column.community": "Paikallinen aikajana",
"column.direct": "Viestit",
"column.directory": "Selaa profiileja",
@ -61,7 +64,7 @@
"column.lists": "Listat",
"column.mutes": "Mykistetyt käyttäjät",
"column.notifications": "Ilmoitukset",
"column.pins": "Kiinnitetty tuuttaus",
"column.pins": "Kiinnitetyt tuuttaukset",
"column.public": "Yleinen aikajana",
"column_back_button.label": "Takaisin",
"column_header.hide_settings": "Piilota asetukset",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Äänestyksen kesto",
"compose_form.poll.option_placeholder": "Valinta numero",
"compose_form.poll.remove_option": "Poista tämä valinta",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Tuuttaa",
"compose_form.publish_loud": "Julkista!",
"compose_form.sensitive.hide": "Valitse tämä arkaluontoisena",
@ -103,7 +108,7 @@
"confirmations.logout.confirm": "Kirjaudu ulos",
"confirmations.logout.message": "Oletko varma, että haluat kirjautua ulos?",
"confirmations.mute.confirm": "Mykistä",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.explanation": "Tämä piilottaa päivitykset heiltä ja päivitykset, joissa hänet mainitaan, mutta sallii silti heidän nähdä sinun päivityksesi ja seurata sinua.",
"confirmations.mute.message": "Haluatko varmasti mykistää käyttäjän {name}?",
"confirmations.redraft.confirm": "Poista & palauta muokattavaksi",
"confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? You will lose all replies, boosts and favourites to it.",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Ei ole 'toots' täällä!",
"empty_column.account_unavailable": "Profiilia ei löydy",
"empty_column.blocks": "Et ole vielä estänyt yhtään käyttäjää.",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "Paikallinen aikajana on tyhjä. Homma lähtee käyntiin, kun kirjoitat jotain julkista!",
"empty_column.direct": "Sinulla ei ole vielä yhtään viestiä yksittäiselle käyttäjälle. Kun lähetät tai vastaanotat sellaisen, se näkyy täällä.",
"empty_column.domain_blocks": "Yhtään verkko-osoitetta ei ole vielä piilotettu.",
@ -164,7 +170,7 @@
"follow_request.authorize": "Valtuuta",
"follow_request.reject": "Hylkää",
"getting_started.developers": "Kehittäjille",
"getting_started.directory": "Profiili hakemisto",
"getting_started.directory": "Profiilihakemisto",
"getting_started.documentation": "Documentaatio",
"getting_started.heading": "Aloitus",
"getting_started.invite": "Kutsu ihmisiä",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Perusasetukset",
"home.column_settings.show_reblogs": "Näytä buustaukset",
"home.column_settings.show_replies": "Näytä vastaukset",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "Päivä päiviä",
"intervals.full.hours": "Tunti tunteja",
"intervals.full.minutes": "Minuuti minuuteja",
@ -202,7 +210,7 @@
"introduction.interactions.reply.text": "TOOT IS NOT A WORD",
"introduction.welcome.action": "Mennään!",
"introduction.welcome.headline": "Ensimmäiset askeleet",
"introduction.welcome.text": "Welcome to the fediverse! In a few moments, you'll be able to broadcast messages and talk to your friends across a wide variety of servers. But this server, {domain}, is special—it hosts your profile, so remember its name.",
"introduction.welcome.text": "Tervetuloa fediverseen! Muutaman hetken kuluttua voit lähettää viestejä ja jutella ystävillesi useiden palvelinten halki. Mutta tämä palvelin {domain}, on erityinen — sinun profiilisi sijaitsee sillä, joten muista sen nimi.",
"keyboard_shortcuts.back": "liiku taaksepäin",
"keyboard_shortcuts.blocked": "avaa lista estetyistä käyttäjistä",
"keyboard_shortcuts.boost": "buustaa",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "avaa lista mykistetyistä käyttäjistä",
"keyboard_shortcuts.my_profile": "avaa profiilisi",
"keyboard_shortcuts.notifications": "avaa ilmoitukset-sarake",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "avaa lista kiinnitetyistä tuuttauksista",
"keyboard_shortcuts.profile": "avaa kirjoittajan profiili",
"keyboard_shortcuts.reply": "vastaa",
@ -243,7 +252,7 @@
"lists.account.remove": "Poista listasta",
"lists.delete": "Poista lista",
"lists.edit": "Muokkaa listaa",
"lists.edit.submit": "Change title",
"lists.edit.submit": "Vaihda otsikko",
"lists.new.create": "Lisää lista",
"lists.new.title_placeholder": "Uuden listan nimi",
"lists.search": "Etsi seuraamistasi henkilöistä",
@ -254,8 +263,9 @@
"missing_indicator.label": "Ei löytynyt",
"missing_indicator.sublabel": "Tätä resurssia ei löytynyt",
"mute_modal.hide_notifications": "Piilota tältä käyttäjältä tulevat ilmoitukset?",
"navigation_bar.apps": "Mobiiliapplikaatiot",
"navigation_bar.apps": "Mobiilisovellukset",
"navigation_bar.blocks": "Estetyt käyttäjät",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "Paikallinen aikajana",
"navigation_bar.compose": "Kirjoita uusi tuuttaus",
"navigation_bar.direct": "Viestit",
@ -266,7 +276,7 @@
"navigation_bar.filters": "Mykistetyt sanat",
"navigation_bar.follow_requests": "Seuraamispyynnöt",
"navigation_bar.follows_and_followers": "Seurattavat ja seuraajat",
"navigation_bar.info": "Tietoa tästä instanssista",
"navigation_bar.info": "Tietoa tästä palvelimesta",
"navigation_bar.keyboard_shortcuts": "Näppäinkomennot",
"navigation_bar.lists": "Listat",
"navigation_bar.logout": "Kirjaudu ulos",
@ -278,7 +288,9 @@
"navigation_bar.security": "Tunnukset",
"notification.favourite": "{name} tykkäsi tilastasi",
"notification.follow": "{name} seurasi sinua",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} mainitsi sinut",
"notification.own_poll": "Your poll has ended",
"notification.poll": "Kysely, johon osallistuit, on päättynyt",
"notification.reblog": "{name} buustasi tilaasi",
"notifications.clear": "Tyhjennä ilmoitukset",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Pikasuodatuspalkki",
"notifications.column_settings.filter_bar.show": "Näytä",
"notifications.column_settings.follow": "Uudet seuraajat:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "Maininnat:",
"notifications.column_settings.poll": "Kyselyn tulokset:",
"notifications.column_settings.push": "Push-ilmoitukset",
@ -327,6 +340,7 @@
"relative_time.just_now": "nyt",
"relative_time.minutes": "{number} m",
"relative_time.seconds": "{number} s",
"relative_time.today": "today",
"reply_indicator.cancel": "Peruuta",
"report.forward": "Välitä kohteeseen {target}",
"report.forward_hint": "Tämä tili on toisella palvelimella. Haluatko lähettää nimettömän raportin myös sinne?",
@ -349,6 +363,7 @@
"status.admin_account": "Avaa moderaattorinäkymä tilistä @{name}",
"status.admin_status": "Avaa tilapäivitys moderaattorinäkymässä",
"status.block": "Estä @{name}",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "Peru buustaus",
"status.cannot_reblog": "Tätä julkaisua ei voi buustata",
"status.copy": "Kopioi linkki tilapäivitykseen",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name} buustasi",
"status.reblogs.empty": "Kukaan ei ole vielä buustannut tätä tuuttausta. Kun joku tekee niin, näkyy kyseinen henkilö tässä.",
"status.redraft": "Poista & palauta muokattavaksi",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "Vastaa",
"status.replyAll": "Vastaa ketjuun",
"status.report": "Raportoi @{name}",
@ -387,7 +403,7 @@
"status.uncached_media_warning": "Ei saatavilla",
"status.unmute_conversation": "Poista keskustelun mykistys",
"status.unpin": "Irrota profiilista",
"suggestions.dismiss": "Dismiss suggestion",
"suggestions.dismiss": "Hylkää ehdotus",
"suggestions.header": "Saatat olla kiinnostunut myös…",
"tabs_bar.federated_timeline": "Yleinen",
"tabs_bar.home": "Koti",
@ -406,18 +422,21 @@
"upload_button.label": "Lisää mediaa",
"upload_error.limit": "Tiedostolatauksien raja ylitetty.",
"upload_error.poll": "Tiedon lataaminen ei ole sallittua kyselyissä.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Anna kuvaus näkörajoitteisia varten",
"upload_form.edit": "Muokkaa",
"upload_form.undo": "Peru",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analysoidaan kuvaa…",
"upload_modal.apply": "Käytä",
"upload_modal.description_placeholder": "Eräänä jäätävänä ja pimeänä yönä gorilla ratkaisi sudokun kahdessa minuutissa",
"upload_modal.detect_text": "Detect text from picture",
"upload_modal.edit_media": "Edit media",
"upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
"upload_modal.preview_label": "Preview ({ratio})",
"upload_modal.detect_text": "Tunnista teksti kuvasta",
"upload_modal.edit_media": "Muokkaa mediaa",
"upload_modal.hint": "Klikkaa tai vedä ympyrä esikatselussa valitaksesi keskipiste, joka näkyy aina pienoiskuvissa.",
"upload_modal.preview_label": "Esikatselu ({ratio})",
"upload_progress.label": "Ladataan...",
"video.close": "Sulje video",
"video.download": "Lataa tiedosto",
"video.exit_fullscreen": "Poistu koko näytön tilasta",
"video.expand": "Laajenna video",
"video.fullscreen": "Koko näyttö",

View File

@ -1,9 +1,10 @@
{
"account.add_or_remove_from_list": "Ajouter ou retirer des listes",
"account.badges.bot": "Robot",
"account.badges.group": "Groupe",
"account.block": "Bloquer @{name}",
"account.block_domain": "Tout masquer venant de {domain}",
"account.blocked": "Bloqué",
"account.blocked": "Bloqué·e",
"account.cancel_follow_request": "Annuler la demande de suivi",
"account.direct": "Envoyer un message direct à @{name}",
"account.domain_blocked": "Domaine caché",
@ -24,7 +25,7 @@
"account.moved_to": "{name} a déménagé vers:",
"account.mute": "Masquer @{name}",
"account.mute_notifications": "Ignorer les notifications de @{name}",
"account.muted": "Silencé",
"account.muted": "Silencé·e",
"account.never_active": "Jamais",
"account.posts": "Pouets",
"account.posts_with_replies": "Pouets et réponses",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Débit limité",
"alert.unexpected.message": "Une erreur inattendue sest produite.",
"alert.unexpected.title": "Oups!",
"announcement.announcement": "Annonce",
"autosuggest_hashtag.per_week": "{count} par semaine",
"boost_modal.combo": "Vous pouvez appuyer sur {combo} pour passer ceci, la prochaine fois",
"bundle_column_error.body": "Une erreur sest produite lors du chargement de ce composant.",
@ -51,12 +53,13 @@
"bundle_modal_error.message": "Une erreur sest produite lors du chargement de ce composant.",
"bundle_modal_error.retry": "Réessayer",
"column.blocks": "Comptes bloqués",
"column.bookmarks": "Marque-pages",
"column.community": "Fil public local",
"column.direct": "Messages privés",
"column.directory": "Parcourir les profils",
"column.domain_blocks": "Domaines cachés",
"column.favourites": "Favoris",
"column.follow_requests": "Demandes de suivi",
"column.follow_requests": "Demandes d'abonnement",
"column.home": "Accueil",
"column.lists": "Listes",
"column.mutes": "Comptes masqués",
@ -73,8 +76,8 @@
"column_subheading.settings": "Paramètres",
"community.column_settings.media_only": "Média uniquement",
"compose_form.direct_message_warning": "Ce pouet sera uniquement envoyé aux personnes mentionnées. Cependant, ladministration de votre instance et des instances réceptrices pourront inspecter ce message.",
"compose_form.direct_message_warning_learn_more": "Plus dinformations",
"compose_form.hashtag_warning": "Ce pouet ne sera pas listé dans les recherches par hashtag car sa visibilité est réglée sur \"non listé\". Seuls les pouets avec une visibilité \"publique\" peuvent être recherchés par hashtag.",
"compose_form.direct_message_warning_learn_more": "En savoir plus",
"compose_form.hashtag_warning": "Ce pouet ne sera pas listé dans les recherches par hashtag car sa visibilité est réglée sur « non listé ». Seuls les pouets avec une visibilité « publique » peuvent être recherchés par hashtag.",
"compose_form.lock_disclaimer": "Votre compte nest pas {locked}. Tout le monde peut vous suivre et voir vos pouets privés.",
"compose_form.lock_disclaimer.lock": "verrouillé",
"compose_form.placeholder": "Quavez-vous en tête?",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Durée du sondage",
"compose_form.poll.option_placeholder": "Choix {number}",
"compose_form.poll.remove_option": "Supprimer ce choix",
"compose_form.poll.switch_to_multiple": "Changer le sondage pour autoriser plusieurs choix",
"compose_form.poll.switch_to_single": "Changer le sondage pour autoriser qu'un seul choix",
"compose_form.publish": "Pouet",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Marquer le média comme sensible",
@ -101,28 +106,28 @@
"confirmations.domain_block.confirm": "Masquer le domaine entier",
"confirmations.domain_block.message": "Êtes-vous vraiment, vraiment sûr⋅e de vouloir bloquer {domain} en entier? Dans la plupart des cas, quelques blocages ou masquages ciblés sont suffisants et préférables. Vous ne verrez plus de contenu provenant de ce domaine, ni dans fils publics, ni dans vos notifications. Vos abonné·e·s utilisant ce domaine seront retiré·e·s.",
"confirmations.logout.confirm": "Déconnexion",
"confirmations.logout.message": "Êtes-vous sûr de vouloir vous déconnecter ?",
"confirmations.logout.message": "Êtes-vous sûr·e de vouloir vous déconnecter ?",
"confirmations.mute.confirm": "Masquer",
"confirmations.mute.explanation": "Cela masquera leurs messages et les messages les mentionnant, mais cela leur permettra quand même de voir vos messages et vous suivre.",
"confirmations.mute.explanation": "Cela masquera ses messages et les messages le ou la mentionnant, mais cela lui permettra quand même de voir vos messages et de vous suivre.",
"confirmations.mute.message": "Êtes-vous sûr·e de vouloir masquer {name} ?",
"confirmations.redraft.confirm": "Effacer et ré-écrire",
"confirmations.redraft.message": "Êtes-vous sûr·e de vouloir effacer ce statut pour le ré-écrire? Ses partages ainsi que ses mises en favori seront perdu·e·s et ses réponses seront orphelines.",
"confirmations.reply.confirm": "Répondre",
"confirmations.reply.message": "Répondre maintenant écrasera le message que vous composez actuellement. Êtes-vous sûr de vouloir continuer ?",
"confirmations.reply.message": "Répondre maintenant écrasera le message que vous composez actuellement. Êtes-vous sûr·e de vouloir continuer ?",
"confirmations.unfollow.confirm": "Ne plus suivre",
"confirmations.unfollow.message": "Voulez-vous arrêter de suivre {name}?",
"confirmations.unfollow.message": "Êtes-vous sûr·e de vouloir arrêter de suivre {name}?",
"conversation.delete": "Supprimer la conversation",
"conversation.mark_as_read": "Marquer comme lu",
"conversation.open": "Afficher la conversation",
"conversation.with": "Avec {names}",
"directory.federated": "Du fédiverse connu",
"directory.local": "De {domain} seulement",
"directory.new_arrivals": "Nouveaux arrivants",
"directory.recently_active": "Récemment actif",
"directory.new_arrivals": "Nouveaux·elles arrivant·e·s",
"directory.recently_active": "Récemment actif·ve·s",
"embed.instructions": "Intégrez ce statut à votre site en copiant le code ci-dessous.",
"embed.preview": "Il apparaîtra comme cela:",
"emoji_button.activity": "Activités",
"emoji_button.custom": "Personnalisé",
"emoji_button.custom": "Personnalisés",
"emoji_button.flags": "Drapeaux",
"emoji_button.food": "Nourriture & Boisson",
"emoji_button.label": "Insérer un émoji",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Aucun pouet ici !",
"empty_column.account_unavailable": "Profil non disponible",
"empty_column.blocks": "Vous navez bloqué aucun·e utilisateur·rice pour le moment.",
"empty_column.bookmarked_statuses": "Vous n'avez pas de pouets enregistrés comme marque-pages pour le moment. Lorsque vous en ajouterez un, il apparaîtra ici.",
"empty_column.community": "Le fil public local est vide. Écrivez donc quelque chose pour le remplir!",
"empty_column.direct": "Vous navez pas encore de messages directs. Lorsque vous en enverrez ou recevrez un, il saffichera ici.",
"empty_column.domain_blocks": "Il ny a aucun domaine caché pour le moment.",
@ -149,13 +155,13 @@
"empty_column.home.public_timeline": "le fil public",
"empty_column.list": "Il ny a rien dans cette liste pour linstant. Dès que des personnes de cette liste publieront de nouveaux statuts, ils apparaîtront ici.",
"empty_column.lists": "Vous navez pas encore de liste. Lorsque vous en créerez une, elle apparaîtra ici.",
"empty_column.mutes": "Vous navez pas encore mis dutilisateur·rice·s en silence.",
"empty_column.mutes": "Vous navez pas encore silencié dutilisateur·rice·s.",
"empty_column.notifications": "Vous navez pas encore de notification. Interagissez avec dautres personnes pour débuter la conversation.",
"empty_column.public": "Il ny a rien ici! Écrivez quelque chose publiquement, ou bien suivez manuellement des personnes dautres instances pour le remplir",
"error.unexpected_crash.explanation": "En raison dun bug dans notre code ou dun problème de compatibilité avec le navigateur, cette page na pas pu être affichée correctement.",
"empty_column.public": "Il ny a rien ici! Écrivez quelque chose publiquement, ou bien suivez manuellement des personnes dautres serveurs pour remplir le fil public",
"error.unexpected_crash.explanation": "En raison dun bug dans notre code ou dun problème de compatibilité avec votre navigateur, cette page na pas pu être affichée correctement.",
"error.unexpected_crash.next_steps": "Essayez de rafraîchir la page. Si cela naide pas, vous pouvez toujours utiliser Mastodon via un autre navigateur ou une application native.",
"errors.unexpected_crash.copy_stacktrace": "Copier la trace-pile dans le presse-papier",
"errors.unexpected_crash.report_issue": "Signaler un bogue",
"errors.unexpected_crash.copy_stacktrace": "Copier la trace d'appels dans le presse-papier",
"errors.unexpected_crash.report_issue": "Signaler le problème",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
"federation.federated.short": "Federated",
@ -168,14 +174,14 @@
"getting_started.documentation": "Documentation",
"getting_started.heading": "Pour commencer",
"getting_started.invite": "Inviter des gens",
"getting_started.open_source_notice": "Mastodon est un logiciel libre. Vous pouvez contribuer et envoyer vos commentaires et rapports de bogues via {github} sur GitHub.",
"getting_started.open_source_notice": "Mastodon est un logiciel libre. Vous pouvez contribuer ou faire des rapports de bogues via {github} sur GitHub.",
"getting_started.security": "Sécurité",
"getting_started.terms": "Conditions dutilisation",
"hashtag.column_header.tag_mode.all": "et {additional}",
"hashtag.column_header.tag_mode.any": "ou {additional}",
"hashtag.column_header.tag_mode.none": "sans {additional}",
"hashtag.column_settings.select.no_options_message": "Aucune suggestion trouvée",
"hashtag.column_settings.select.placeholder": "Ajouter des mots-clés…",
"hashtag.column_settings.select.placeholder": "Ajouter des hashtags…",
"hashtag.column_settings.tag_mode.all": "Tous ces éléments",
"hashtag.column_settings.tag_mode.any": "Au moins un de ces éléments",
"hashtag.column_settings.tag_mode.none": "Aucun de ces éléments",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Base",
"home.column_settings.show_reblogs": "Afficher les partages",
"home.column_settings.show_replies": "Afficher les réponses",
"home.hide_announcements": "Masquer les annonces",
"home.show_announcements": "Afficher les annonces",
"intervals.full.days": "{number, plural, one {# jour} other {# jours}}",
"intervals.full.hours": "{number, plural, one {# heure} other {# heures}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
@ -195,25 +203,25 @@
"introduction.federation.local.text": "Les messages publics de personnes se trouvant sur le même serveur que vous apparaîtront sur le fil public local.",
"introduction.interactions.action": "Finir le tutoriel !",
"introduction.interactions.favourite.headline": "Favoris",
"introduction.interactions.favourite.text": "Vous pouvez garder un pouet pour plus tard et faire savoir à son auteur·ice que vous lavez aimé, en le favorisant.",
"introduction.interactions.favourite.text": "Vous pouvez garder un pouet pour plus tard et faire savoir à son auteur·ice que vous lavez aimé, en l'ajoutant aux favoris.",
"introduction.interactions.reblog.headline": "Repartager",
"introduction.interactions.reblog.text": "Vous pouvez partager les pouets d'autres personnes avec vos abonné·e·s en les repartageant.",
"introduction.interactions.reply.headline": "Répondre",
"introduction.interactions.reply.text": "Vous pouvez répondre aux pouets d'autres personnes et à vos propres pouets, ce qui les enchaînera dans une conversation.",
"introduction.welcome.action": "Allons-y !",
"introduction.welcome.headline": "Premiers pas",
"introduction.welcome.text": "Bienvenue dans le fediverse ! Dans quelques instants, vous pourrez diffuser des messages et parler à vos amis sur une grande variété de serveurs. Mais ce serveur, {domain}, est spécial - il héberge votre profil, alors souvenez-vous de son nom.",
"introduction.welcome.text": "Bienvenue dans le fédiverse ! Dans quelques instants, vous pourrez diffuser des messages et parler à vos ami·e·s sur une grande variété de serveurs. Mais ce serveur, {domain}, est spécial - il héberge votre profil, alors souvenez-vous de son nom.",
"keyboard_shortcuts.back": "pour revenir en arrière",
"keyboard_shortcuts.blocked": "pour ouvrir une liste dutilisateur·rice·s bloqué·e·s",
"keyboard_shortcuts.blocked": "pour ouvrir la liste des comptes bloqués",
"keyboard_shortcuts.boost": "pour partager",
"keyboard_shortcuts.column": "pour focaliser un statut dans lune des colonnes",
"keyboard_shortcuts.compose": "pour focaliser la zone de rédaction",
"keyboard_shortcuts.description": "Description",
"keyboard_shortcuts.direct": "pour ouvrir une colonne des messages directs",
"keyboard_shortcuts.direct": "pour ouvrir la colonne des messages directs",
"keyboard_shortcuts.down": "pour descendre dans la liste",
"keyboard_shortcuts.enter": "pour ouvrir le statut",
"keyboard_shortcuts.favourite": "pour ajouter aux favoris",
"keyboard_shortcuts.favourites": "pour ouvrir une liste de favoris",
"keyboard_shortcuts.favourites": "pour ouvrir la liste des pouets favoris",
"keyboard_shortcuts.federated": "pour ouvrir le fil public global",
"keyboard_shortcuts.heading": "Raccourcis clavier",
"keyboard_shortcuts.home": "pour ouvrir laccueil",
@ -221,15 +229,16 @@
"keyboard_shortcuts.legend": "pour afficher cette légende",
"keyboard_shortcuts.local": "pour ouvrir le fil public local",
"keyboard_shortcuts.mention": "pour mentionner lauteur·rice",
"keyboard_shortcuts.muted": "pour ouvrir la liste des utilisateur·rice·s rendu·e·s muet·te·s",
"keyboard_shortcuts.muted": "pour ouvrir la liste des utilisateur·rice·s muté·e·s",
"keyboard_shortcuts.my_profile": "pour ouvrir votre profil",
"keyboard_shortcuts.notifications": "pour ouvrir votre colonne de notifications",
"keyboard_shortcuts.open_media": "pour ouvrir le média",
"keyboard_shortcuts.pinned": "pour ouvrir une liste des pouets épinglés",
"keyboard_shortcuts.profile": "pour ouvrir le profil de lauteur·rice",
"keyboard_shortcuts.reply": "pour répondre",
"keyboard_shortcuts.requests": "pour ouvrir la liste de demandes de suivi",
"keyboard_shortcuts.search": "pour cibler la recherche",
"keyboard_shortcuts.start": "pour ouvrir la colonne \"pour commencer\"",
"keyboard_shortcuts.start": "pour ouvrir la colonne « pour commencer »",
"keyboard_shortcuts.toggle_hidden": "pour afficher/cacher un texte derrière CW",
"keyboard_shortcuts.toggle_sensitivity": "pour afficher/cacher les médias",
"keyboard_shortcuts.toot": "pour démarrer un tout nouveau pouet",
@ -241,9 +250,9 @@
"lightbox.view_context": "Voir le contexte",
"lists.account.add": "Ajouter à la liste",
"lists.account.remove": "Supprimer de la liste",
"lists.delete": "Effacer la liste",
"lists.delete": "Supprimer la liste",
"lists.edit": "Éditer la liste",
"lists.edit.submit": "Changer le titre",
"lists.edit.submit": "Modifier le titre",
"lists.new.create": "Ajouter une liste",
"lists.new.title_placeholder": "Titre de la nouvelle liste",
"lists.search": "Rechercher parmi les gens que vous suivez",
@ -256,8 +265,9 @@
"mute_modal.hide_notifications": "Masquer les notifications de cette personne?",
"navigation_bar.apps": "Applications mobiles",
"navigation_bar.blocks": "Comptes bloqués",
"navigation_bar.bookmarks": "Marque-pages",
"navigation_bar.community_timeline": "Fil public local",
"navigation_bar.compose": "Rédiger un nouveau toot",
"navigation_bar.compose": "Rédiger un nouveau pouet",
"navigation_bar.direct": "Messages directs",
"navigation_bar.discover": "Découvrir",
"navigation_bar.domain_blocks": "Domaines cachés",
@ -278,7 +288,9 @@
"navigation_bar.security": "Sécurité",
"notification.favourite": "{name} a ajouté à ses favoris:",
"notification.follow": "{name} vous suit",
"notification.mention": "{name} vous a mentionné:",
"notification.follow_request": "{name} a demandé à vous suivre",
"notification.mention": "{name} vous a mentionné·e:",
"notification.own_poll": "Votre sondage est terminé",
"notification.poll": "Un sondage auquel vous avez participé vient de se terminer",
"notification.reblog": "{name} a partagé votre statut:",
"notifications.clear": "Nettoyer les notifications",
@ -289,14 +301,15 @@
"notifications.column_settings.filter_bar.category": "Barre de filtrage rapide",
"notifications.column_settings.filter_bar.show": "Afficher",
"notifications.column_settings.follow": "Nouveaux⋅elles abonné⋅e·s:",
"notifications.column_settings.follow_request": "Nouvelles demandes dabonnement :",
"notifications.column_settings.mention": "Mentions:",
"notifications.column_settings.poll": "Résultats du sondage :",
"notifications.column_settings.push": "Notifications",
"notifications.column_settings.poll": "Résultats des sondage :",
"notifications.column_settings.push": "Notifications push",
"notifications.column_settings.reblog": "Partages:",
"notifications.column_settings.show": "Afficher dans la colonne",
"notifications.column_settings.sound": "Émettre un son",
"notifications.filter.all": "Tout",
"notifications.filter.boosts": "Repartages",
"notifications.filter.boosts": "Partages",
"notifications.filter.favourites": "Favoris",
"notifications.filter.follows": "Abonné·e·s",
"notifications.filter.mentions": "Mentions",
@ -321,22 +334,23 @@
"privacy.unlisted.short": "Non listé",
"refresh": "Actualiser",
"regeneration_indicator.label": "Chargement…",
"regeneration_indicator.sublabel": "Le flux de votre page principale est en cours de préparation!",
"regeneration_indicator.sublabel": "Votre fil principal est en cours de préparation!",
"relative_time.days": "{number} j",
"relative_time.hours": "{number} h",
"relative_time.just_now": "à linstant",
"relative_time.minutes": "{number} min",
"relative_time.seconds": "{number} s",
"relative_time.today": "aujourdhui",
"reply_indicator.cancel": "Annuler",
"report.forward": "Transférer à {target}",
"report.forward_hint": "Le compte provient dun autre serveur. Envoyez également une copie anonyme du rapport?",
"report.forward_hint": "Le compte provient dun autre serveur. Envoyer également une copie anonyme du rapport?",
"report.hint": "Le rapport sera envoyé aux modérateur·rice·s de votre instance. Vous pouvez expliquer pourquoi vous signalez le compte ci-dessous :",
"report.placeholder": "Commentaires additionnels",
"report.submit": "Envoyer",
"report.target": "Signalement",
"report.target": "Signalement de {target}",
"search.placeholder": "Rechercher",
"search_popout.search_format": "Recherche avancée",
"search_popout.tips.full_text": "Les textes simples retournent les pouets que vous avez écris, mis en favori, épinglés, ou ayant été mentionnés, ainsi que les identifiants, les noms affichés, et les hashtags des personnes et messages correspondant.",
"search_popout.tips.full_text": "Un texte normal retourne les pouets que vous avez écris, mis en favori, partagés, ou vous mentionnant, ainsi que les identifiants, les noms affichés, et les hashtags des personnes et messages correspondant.",
"search_popout.tips.hashtag": "hashtag",
"search_popout.tips.status": "statuts",
"search_popout.tips.text": "Un texte simple renvoie les noms affichés, les identifiants et les hashtags correspondants",
@ -349,8 +363,9 @@
"status.admin_account": "Ouvrir linterface de modération pour @{name}",
"status.admin_status": "Ouvrir ce statut dans linterface de modération",
"status.block": "Bloquer @{name}",
"status.cancel_reblog_private": "Dé-booster",
"status.cannot_reblog": "Cette publication ne peut être boostée",
"status.bookmark": "Ajouter aux marque-pages",
"status.cancel_reblog_private": "Annuler le partage",
"status.cannot_reblog": "Ce pouet ne peut pas être partagé",
"status.copy": "Copier le lien vers le pouet",
"status.delete": "Effacer",
"status.detailed_status": "Vue détaillée de la conversation",
@ -370,10 +385,11 @@
"status.pinned": "Pouet épinglé",
"status.read_more": "En savoir plus",
"status.reblog": "Partager",
"status.reblog_private": "Booster vers laudience originale",
"status.reblog_private": "Partager à laudience originale",
"status.reblogged_by": "{name} a partagé:",
"status.reblogs.empty": "Personne na encore partagé ce pouet. Lorsque quelquun le fera, il apparaîtra ici.",
"status.redraft": "Effacer et ré-écrire",
"status.remove_bookmark": "Retirer des marque-pages",
"status.reply": "Répondre",
"status.replyAll": "Répondre au fil",
"status.report": "Signaler @{name}",
@ -388,7 +404,7 @@
"status.unmute_conversation": "Ne plus masquer la conversation",
"status.unpin": "Retirer du profil",
"suggestions.dismiss": "Rejeter la suggestion",
"suggestions.header": "Vous pourriez être intéressé par…",
"suggestions.header": "Vous pourriez être intéressé·e par…",
"tabs_bar.federated_timeline": "Fil public global",
"tabs_bar.home": "Accueil",
"tabs_bar.local_timeline": "Fil public local",
@ -406,9 +422,11 @@
"upload_button.label": "Joindre un média ({formats})",
"upload_error.limit": "Taille maximale d'envoi de fichier dépassée.",
"upload_error.poll": "Lenvoi de fichiers nest pas autorisé avec les sondages.",
"upload_form.audio_description": "Décrire pour les personnes ayant des difficultés daudition",
"upload_form.description": "Décrire pour les malvoyant·e·s",
"upload_form.edit": "Modifier",
"upload_form.undo": "Supprimer",
"upload_form.video_description": "Décrire pour les personnes ayant des problèmes daudition ou de vision",
"upload_modal.analyzing_picture": "Analyse de limage en cours…",
"upload_modal.apply": "Appliquer",
"upload_modal.description_placeholder": "Buvez de ce whisky que le patron juge fameux",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Aperçu ({ratio})",
"upload_progress.label": "Envoi en cours…",
"video.close": "Fermer la vidéo",
"video.download": "Télécharger le fichier",
"video.exit_fullscreen": "Quitter le plein écran",
"video.expand": "Agrandir la vidéo",
"video.fullscreen": "Plein écran",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Add or Remove from lists",
"account.badges.bot": "Bot",
"account.badges.group": "Group",
"account.block": "Block @{name}",
"account.block_domain": "Hide everything from {domain}",
"account.blocked": "Blocked",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "An unexpected error occurred.",
"alert.unexpected.title": "Oops!",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} per week",
"boost_modal.combo": "You can press {combo} to skip this next time",
"bundle_column_error.body": "Something went wrong while loading this component.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Something went wrong while loading this component.",
"bundle_modal_error.retry": "Try again",
"column.blocks": "Blocked users",
"column.bookmarks": "Bookmarks",
"column.community": "Local timeline",
"column.direct": "Direct messages",
"column.directory": "Browse profiles",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Toot",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Mark media as sensitive",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "No toots here!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "You haven't blocked any users yet.",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
"empty_column.domain_blocks": "There are no hidden domains yet.",
@ -178,6 +184,8 @@
"home.column_settings.basic": "Basic",
"home.column_settings.show_reblogs": "Show boosts",
"home.column_settings.show_replies": "Show replies",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
@ -219,6 +227,7 @@
"keyboard_shortcuts.muted": "to open muted users list",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.notifications": "to open notifications column",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "to open pinned toots list",
"keyboard_shortcuts.profile": "to open author's profile",
"keyboard_shortcuts.reply": "to reply",
@ -251,6 +260,7 @@
"mute_modal.hide_notifications": "Hide notifications from this user?",
"navigation_bar.apps": "Mobile apps",
"navigation_bar.blocks": "Blocked users",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "Local timeline",
"navigation_bar.compose": "Compose new toot",
"navigation_bar.direct": "Direct messages",
@ -273,7 +283,9 @@
"navigation_bar.security": "Security",
"notification.favourite": "{name} favourited your status",
"notification.follow": "{name} followed you",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} mentioned you",
"notification.own_poll": "Your poll has ended",
"notification.poll": "A poll you have voted in has ended",
"notification.reblog": "{name} boosted your status",
"notifications.clear": "Clear notifications",
@ -284,6 +296,7 @@
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.follow": "New followers:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "Mentions:",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.push": "Push notifications",
@ -322,6 +335,7 @@
"relative_time.just_now": "now",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "today",
"reply_indicator.cancel": "Cancel",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
@ -344,6 +358,7 @@
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Block @{name}",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "Unboost",
"status.cannot_reblog": "This post cannot be boosted",
"status.copy": "Copy link to status",
@ -368,6 +383,7 @@
"status.reblogged_by": "{name} boosted",
"status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "Reply",
"status.replyAll": "Reply to thread",
"status.report": "Report @{name}",
@ -400,9 +416,11 @@
"upload_button.label": "Add media ({formats})",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Describe for the visually impaired",
"upload_form.edit": "Edit",
"upload_form.undo": "Delete",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
@ -412,6 +430,7 @@
"upload_modal.preview_label": "Preview ({ratio})",
"upload_progress.label": "Uploading...",
"video.close": "Close video",
"video.download": "Download file",
"video.exit_fullscreen": "Exit full screen",
"video.expand": "Expand video",
"video.fullscreen": "Full screen",

View File

@ -1,27 +1,28 @@
{
"account.add_or_remove_from_list": "Engadir ou Eliminar das listas",
"account.add_or_remove_from_list": "Engadir ou eliminar das listaxes",
"account.badges.bot": "Bot",
"account.badges.group": "Grupo",
"account.block": "Bloquear @{name}",
"account.block_domain": "Ocultar calquer contido de {domain}",
"account.block_domain": "Agochar todo de {domain}",
"account.blocked": "Bloqueada",
"account.cancel_follow_request": "Cancelar petición de seguemento",
"account.cancel_follow_request": "Desbotar solicitude de seguimento",
"account.direct": "Mensaxe directa @{name}",
"account.domain_blocked": "Dominio agochado",
"account.edit_profile": "Editar perfil",
"account.endorse": "Mostrado no perfil",
"account.endorse": "Amosar no perfil",
"account.follow": "Seguir",
"account.followers": "Seguidoras",
"account.followers.empty": "Ninguén está a seguir esta usuaria por agora.",
"account.followers.empty": "Aínda ninguén segue esta usuaria.",
"account.follows": "Seguindo",
"account.follows.empty": "Esta usuaria aínda non segue a ninguén.",
"account.follows_you": "Séguete",
"account.hide_reblogs": "Ocultar repeticións de @{name}",
"account.last_status": "Último activo",
"account.link_verified_on": "A propiedade de esta ligazón foi comprobada en {date}",
"account.locked_info": "O estado da intimidade de esta conta estableceuse en pechado. A persoa dona da conta revisa quen pode seguila.",
"account.media": "Medios",
"account.hide_reblogs": "Agochar repeticións de @{name}",
"account.last_status": "Última actividade",
"account.link_verified_on": "A propiedade desta ligazón foi verificada o {date}",
"account.locked_info": "Esta é unha conta privada. A propietaria revisa de xeito manual quen pode seguila.",
"account.media": "Multimedia",
"account.mention": "Mencionar @{name}",
"account.moved_to": "{name} marchou a:",
"account.moved_to": "{name} mudouse a:",
"account.mute": "Acalar @{name}",
"account.mute_notifications": "Acalar as notificacións de @{name}",
"account.muted": "Acalada",
@ -29,133 +30,138 @@
"account.posts": "Toots",
"account.posts_with_replies": "Toots e respostas",
"account.report": "Informar sobre @{name}",
"account.requested": "Agardando aceptación. Pulse para cancelar a solicitude de seguimento",
"account.requested": "Agardando aprovación. Preme para desbotar a solicitude de seguimento",
"account.share": "Compartir o perfil de @{name}",
"account.show_reblogs": "Mostrar repeticións de @{name}",
"account.show_reblogs": "Amosar compartidos de @{name}",
"account.unblock": "Desbloquear @{name}",
"account.unblock_domain": "Non ocultar {domain}",
"account.unendorse": "Non mostrar no perfil",
"account.unfollow": "Non seguir",
"account.unmute": "Non acalar @{name}",
"account.unmute_notifications": "Desbloquear as notificacións de @{name}",
"alert.rate_limited.message": "Por favor inténteo tras {retry_time, time, medium}.",
"alert.rate_limited.title": "Taxa limitada",
"alert.unexpected.message": "Aconteceu un fallo non agardado.",
"alert.unexpected.title": "Vaia!",
"account.unblock_domain": "Amosar {domain}",
"account.unendorse": "Non amosar no perfil",
"account.unfollow": "Deixar de seguir",
"account.unmute": "Deixar de silenciar a @{name}",
"account.unmute_notifications": "Deixar de silenciar as notificacións de @{name}",
"alert.rate_limited.message": "Téntao novamente após {retry_time, time, medium}.",
"alert.rate_limited.title": "Límite de intentos",
"alert.unexpected.message": "Ocorreu un erro non agardado.",
"alert.unexpected.title": "Vaites!",
"announcement.announcement": "Anuncio",
"autosuggest_hashtag.per_week": "{count} por semana",
"boost_modal.combo": "Pulse {combo} para saltar esto a próxima vez",
"bundle_column_error.body": "Houbo un fallo mentras se cargaba este compoñente.",
"bundle_column_error.retry": "Inténteo de novo",
"boost_modal.combo": "Preme {combo} para ignorar isto na seguinte vez",
"bundle_column_error.body": "Ocorreu un erro ó cargar este compoñente.",
"bundle_column_error.retry": "Téntao de novo",
"bundle_column_error.title": "Fallo na rede",
"bundle_modal_error.close": "Pechar",
"bundle_modal_error.message": "Algo fallou mentras se cargaba este compoñente.",
"bundle_modal_error.retry": "Inténteo de novo",
"bundle_modal_error.message": "Ocorreu un erro ó cargar este compoñente.",
"bundle_modal_error.retry": "Téntao de novo",
"column.blocks": "Usuarias bloqueadas",
"column.community": "Liña temporal local",
"column.bookmarks": "Marcadores",
"column.community": "Cronoloxía local",
"column.direct": "Mensaxes directas",
"column.directory": "Ver perfiles",
"column.directory": "Procurar perfís",
"column.domain_blocks": "Dominios agochados",
"column.favourites": "Favoritas",
"column.favourites": "Favoritos",
"column.follow_requests": "Peticións de seguimento",
"column.home": "Inicio",
"column.lists": "Listas",
"column.lists": "Listaxes",
"column.mutes": "Usuarias acaladas",
"column.notifications": "Notificacións",
"column.pins": "Mensaxes fixadas",
"column.public": "Liña temporal federada",
"column_back_button.label": "Atrás",
"column.pins": "Toots fixados",
"column.public": "Cronoloxía federada",
"column_back_button.label": "Voltar",
"column_header.hide_settings": "Agochar axustes",
"column_header.moveLeft_settings": "Mover a columna hacia a esquerda",
"column_header.moveRight_settings": "Mover a columna hacia a dereita",
"column_header.moveLeft_settings": "Mover columna cara a esquerda",
"column_header.moveRight_settings": "Mover columna cara a dereita",
"column_header.pin": "Fixar",
"column_header.show_settings": "Mostras axustes",
"column_header.unpin": "Soltar",
"column_header.show_settings": "Amosar axustes",
"column_header.unpin": "Desapegar",
"column_subheading.settings": "Axustes",
"community.column_settings.media_only": "Só medios",
"compose_form.direct_message_warning": "Este toot enviarase só as usuarias mencionadas. Porén, a súa proveedora de internet e calquera das instancias receptoras poderían examinar esta mensaxe.",
"community.column_settings.media_only": "Só multimedia",
"compose_form.direct_message_warning": "Este toot só será enviado ás usuarias mencionadas.",
"compose_form.direct_message_warning_learn_more": "Coñecer máis",
"compose_form.hashtag_warning": "Esta mensaxe non será listada baixo ningunha etiqueta xa que está marcada como non listada. Só os toots públicos poden buscarse por etiquetas.",
"compose_form.lock_disclaimer": "A súa conta non está {locked}. Calquera pode seguila para ver as súas mensaxes só-para-seguidoras.",
"compose_form.lock_disclaimer.lock": "bloqueado",
"compose_form.hashtag_warning": "Este toot non aparecerá baixo ningún cancelo (hashtag) porque non está listado. Só se poden procurar toots públicos por cancelos.",
"compose_form.lock_disclaimer": "A túa conta non está {locked}. Todas poden seguirte para ollar os teus toots só para seguidoras.",
"compose_form.lock_disclaimer.lock": "bloqueada",
"compose_form.placeholder": "Qué contas?",
"compose_form.poll.add_option": "Engadir unha opción",
"compose_form.poll.duration": "Duración da sondaxe",
"compose_form.poll.duration": "Duración da enquisa",
"compose_form.poll.option_placeholder": "Opción {number}",
"compose_form.poll.remove_option": "Eliminar esta opción",
"compose_form.poll.switch_to_multiple": "Mudar a enquisa para permitir múltiples escollas",
"compose_form.poll.switch_to_single": "Mudar a enquisa para permitir unha soa escolla",
"compose_form.publish": "Toot",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Marcar medios como sensibles",
"compose_form.sensitive.marked": "Medios marcados como sensibles",
"compose_form.sensitive.unmarked": "Os medios non están marcados como sensibles",
"compose_form.sensitive.hide": "Marcar coma contido multimedia sensíbel",
"compose_form.sensitive.marked": "Contido multimedia marcado coma sensíbel",
"compose_form.sensitive.unmarked": "Contido multimedia non marcado coma sensíbel",
"compose_form.spoiler.marked": "O texto está agochado tras un aviso",
"compose_form.spoiler.unmarked": "O texto non está agochado",
"compose_form.spoiler_placeholder": "Escriba o aviso aquí",
"confirmation_modal.cancel": "Cancelar",
"confirmations.block.block_and_report": "Bloquear e Informar",
"compose_form.spoiler_placeholder": "Escribe o teu aviso aquí",
"confirmation_modal.cancel": "Desbotar",
"confirmations.block.block_and_report": "Bloquear e denunciar",
"confirmations.block.confirm": "Bloquear",
"confirmations.block.message": "Está segura de querer bloquear a {name}?",
"confirmations.delete.confirm": "Borrar",
"confirmations.delete.message": "Está segura de que quere eliminar este estado?",
"confirmations.block.message": "Tes a certeza de querer bloquear a {name}?",
"confirmations.delete.confirm": "Eliminar",
"confirmations.delete.message": "Tes a certeza de querer eliminar este estado?",
"confirmations.delete_list.confirm": "Eliminar",
"confirmations.delete_list.message": "Estás seguro de que queres eliminar permanentemente esta lista?",
"confirmations.domain_block.confirm": "Agochar un dominio completo",
"confirmations.domain_block.message": "Realmente está segura de que quere bloquear por completo o dominio {domain}? Normalmente é suficiente, e preferible, bloquear de xeito selectivo varios elementos. Non verá contidos de ese dominio en ningunha liña temporal ou nas notificacións. As súas seguidoras en ese dominio serán eliminadas.",
"confirmations.logout.confirm": "Desconectar",
"confirmations.logout.message": "Seguro que desexa desconectar?",
"confirmations.delete_list.message": "Tes a certeza de querer eliminar de xeito permanente esta listaxe?",
"confirmations.domain_block.confirm": "Agochar dominio enteiro",
"confirmations.domain_block.message": "Tes a certeza de querer bloquear todo de {domain}? Na meirande parte dos casos uns bloqueos ou silenciados específicos son suficientes. Non verás máis o contido deste dominio en ningunha cronoloxía pública ou nas túas notificacións. As túas seguidoras deste dominio serán eliminadas.",
"confirmations.logout.confirm": "Pechar sesión",
"confirmations.logout.message": "Desexas pechar a sesión?",
"confirmations.mute.confirm": "Acalar",
"confirmations.mute.explanation": "Esto ocultará as publicacións delas e as que as mencionen, pero poderán seguir lendo as túas publicacións e seguirte.",
"confirmations.mute.message": "Está segura de que quere acalar a {name}?",
"confirmations.mute.explanation": "Isto agochará as publicacións delas ou nas que as mencionen, mais permitirá que vexan as túas publicacións e sexan seguidoras túas.",
"confirmations.mute.message": "Tes a certeza de querer acalar a {name}?",
"confirmations.redraft.confirm": "Eliminar e reescribir",
"confirmations.redraft.message": "Está segura de querer eliminar este estado e voltalo a escribir? Perderá réplicas e favoritas, e as respostas ao orixinal quedarán orfas.",
"confirmations.reply.confirm": "Respostar",
"confirmations.reply.message": "Respostando agora sobreescribirá a mensaxe que está a compoñer. Segura de querer proceder?",
"confirmations.redraft.message": "Tes a certeza de querer eliminar este estado e reescribilo? Perderás os compartidos e favoritos, e as respostas á publicación orixinal ficarán orfas.",
"confirmations.reply.confirm": "Responder",
"confirmations.reply.message": "Responder agora sobrescribirá a mensaxe que estás a compor. Tes a certeza de que queres continuar?",
"confirmations.unfollow.confirm": "Deixar de seguir",
"confirmations.unfollow.message": "Quere deixar de seguir a {name}?",
"confirmations.unfollow.message": "Desexas deixar de seguir a {name}?",
"conversation.delete": "Eliminar conversa",
"conversation.mark_as_read": "Marcar como lido",
"conversation.open": "Ver conversa",
"conversation.with": "Con {names}",
"directory.federated": "Desde o fediverso coñecido",
"directory.local": "Só desde {domain}",
"directory.new_arrivals": "Novas achegas",
"directory.recently_active": "Activo recentemente",
"embed.instructions": "Copie o código inferior para incrustar no seu sitio web este estado.",
"directory.federated": "Do fediverso coñecido",
"directory.local": "Só de {domain}",
"directory.new_arrivals": "Recén chegadas",
"directory.recently_active": "Activas recentemente",
"embed.instructions": "Engade este estado ó teu sitio web copiando o seguinte código.",
"embed.preview": "Así será mostrado:",
"emoji_button.activity": "Actividade",
"emoji_button.custom": "Persoalizado",
"emoji_button.flags": "Marcas",
"emoji_button.custom": "Personalizado",
"emoji_button.flags": "Bandeiras",
"emoji_button.food": "Comida e Bebida",
"emoji_button.label": "Insertar emoji",
"emoji_button.label": "Inserir emoticona",
"emoji_button.nature": "Natureza",
"emoji_button.not_found": "Sen emojos!! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "Obxetos",
"emoji_button.people": "Xente",
"emoji_button.recent": "Utilizadas con frecuencia",
"emoji_button.search": "Buscar...",
"emoji_button.search_results": "Resultados da busca",
"emoji_button.not_found": "Non hai emoticonas!! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "Obxectos",
"emoji_button.people": "Persoas",
"emoji_button.recent": "Empregadas acotío",
"emoji_button.search": "Procurar...",
"emoji_button.search_results": "Resultados da procura",
"emoji_button.symbols": "Símbolos",
"emoji_button.travel": "Viaxes e Lugares",
"empty_column.account_timeline": "Sen toots por aquí!",
"empty_column.account_timeline": "Non hai toots aquí!",
"empty_column.account_unavailable": "Perfil non dispoñible",
"empty_column.blocks": "Non bloqueou ningunha usuaria polo de agora.",
"empty_column.community": "A liña temporal local está baldeira. Escriba algo de xeito público para que rule!",
"empty_column.direct": "Aínda non ten mensaxes directas. Cando envíe ou reciba unha, aparecerá aquí.",
"empty_column.domain_blocks": "Aínda non ocultou ningún dominio.",
"empty_column.favourited_statuses": "Aínda non ten toots favoritos. Cando favoreza algún, aparecerá aquí.",
"empty_column.favourites": "Ninguén favoreceu este toot polo momento. Cando o faga algn, aparecerán aquí.",
"empty_column.follow_requests": "Non ten peticións de seguimento. Cando reciba unha, mostrarase aquí.",
"empty_column.hashtag": "Aínda non hai nada con esta etiqueta.",
"empty_column.home": "A súa liña temporal de inicio está baldeira! Visite {public} ou utilice a busca para atopar outras usuarias.",
"empty_column.home.public_timeline": "a liña temporal pública",
"empty_column.blocks": "Aínda non bloqueaches a ningún usuaria.",
"empty_column.bookmarked_statuses": "Aínda non marcaches ningún toot. Cando o fagas, aparecerán aquí.",
"empty_column.community": "A cronoloxía local está baleira. Escribe algo de xeito público para espallalo!",
"empty_column.direct": "Aínda non tes mensaxes directas. Cando envíes ou recibas unha, amosarase aquí.",
"empty_column.domain_blocks": "Aínda non hai dominios agochados.",
"empty_column.favourited_statuses": "Aínda non tes toots favoritos. Cando che goste algún, aparecerá aquí.",
"empty_column.favourites": "A ninguén lle gostou este toot polo momento. Cando a alguén lle goste, aparecerá aquí.",
"empty_column.follow_requests": "Non tes peticións de seguimento. Cando recibas unha, amosarase aquí.",
"empty_column.hashtag": "Aínda non hai nada con este cancelo.",
"empty_column.home": "A túa cronoloxía inicial está baleira! Visita {public} ou emprega a procura para atopar outras usuarias.",
"empty_column.home.public_timeline": "a cronoloxía pública",
"empty_column.list": "Aínda non hai nada en esta lista. Cando as usuarias incluídas na lista publiquen mensaxes, aparecerán aquí.",
"empty_column.lists": "Aínda non ten listas. Cando cree unha, mostrarase aquí.",
"empty_column.mutes": "Non acalou ningunha usuaria polo de agora.",
"empty_column.notifications": "Aínda non ten notificacións. Interactúe con outras para iniciar unha conversa.",
"empty_column.public": "Nada por aquí! Escriba algo de xeito público, ou siga manualmente usuarias de outros servidores para ir enchéndoa",
"error.unexpected_crash.explanation": "Non se mostra correctamente a páxina debido a un fallo no código ou problema de compatibilidade do navegador.",
"error.unexpected_crash.next_steps": "Intenta actualizar a páxina. Se esto non axuda podes tamén utilizar Mastodon en outro navegador ou app nativa.",
"errors.unexpected_crash.copy_stacktrace": "Copiar trazas ao portaretallos",
"errors.unexpected_crash.report_issue": "Informar de problema",
"empty_column.lists": "Aínda non tes listaxes. Cando crees unha, amosarase aquí.",
"empty_column.mutes": "Aínda non silenciaches a ningúnha usuaria.",
"empty_column.notifications": "Aínda non tes notificacións. Interactúa con outros para comezar unha conversa.",
"empty_column.public": "Nada por aquí! Escribe algo de xeito público, ou segue de xeito manual usuarias doutros servidores para ir enchéndoo",
"error.unexpected_crash.explanation": "Debido a un erro no noso código ou a unha compatilidade co teu navegador, esta páxina non pode ser amosada correctamente.",
"error.unexpected_crash.next_steps": "Tenta actualizar a páxina. Se esto non axuda podes tamén empregar o Mastodon noutro navegador ou aplicación nativa.",
"errors.unexpected_crash.copy_stacktrace": "Copiar trazas (stacktrace) ó portapapeis",
"errors.unexpected_crash.report_issue": "Denunciar un problema",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
"federation.federated.short": "Federated",
@ -163,267 +169,279 @@
"federation.local_only.short": "Local-only",
"follow_request.authorize": "Autorizar",
"follow_request.reject": "Rexeitar",
"getting_started.developers": "Desenvolvedoras",
"getting_started.directory": "Directorio do perfil",
"getting_started.developers": "Desenvolvedores",
"getting_started.directory": "Directorio local",
"getting_started.documentation": "Documentación",
"getting_started.heading": "Comezando",
"getting_started.invite": "Convide a xente",
"getting_started.open_source_notice": "Mastodon é software de código aberto. Pode contribuír ou informar de fallos en GitHub en {github}.",
"getting_started.security": "Seguridade",
"getting_started.heading": "Primeiros pasos",
"getting_started.invite": "Convidar persoas",
"getting_started.open_source_notice": "O Mastodon é software de código aberto. Podes contribuír ou informar de fallos no GitHub en {github}.",
"getting_started.security": "Seguranza",
"getting_started.terms": "Termos do servizo",
"hashtag.column_header.tag_mode.all": "e {additional}",
"hashtag.column_header.tag_mode.any": "ou {additional}",
"hashtag.column_header.tag_mode.none": "sen {additional}",
"hashtag.column_settings.select.no_options_message": "Non se atopan suxestións",
"hashtag.column_settings.select.placeholder": "Introducir etiquetas…",
"hashtag.column_settings.tag_mode.all": "Todos estos",
"hashtag.column_settings.tag_mode.any": "Calquera de estos",
"hashtag.column_settings.tag_mode.none": "Ningún de estos",
"hashtag.column_settings.select.no_options_message": "Non se atoparon suxestións",
"hashtag.column_settings.select.placeholder": "Inserir cancelos…",
"hashtag.column_settings.tag_mode.all": "Todos estes",
"hashtag.column_settings.tag_mode.any": "Calquera destes",
"hashtag.column_settings.tag_mode.none": "Ningún destes",
"hashtag.column_settings.tag_toggle": "Incluír etiquetas adicionais para esta columna",
"home.column_settings.basic": "Básico",
"home.column_settings.show_reblogs": "Mostrar repeticións",
"home.column_settings.show_replies": "Mostrar respostas",
"home.column_settings.show_reblogs": "Amosar compartidos",
"home.column_settings.show_replies": "Amosar respostas",
"home.hide_announcements": "Agochar anuncios",
"home.show_announcements": "Amosar anuncios",
"intervals.full.days": "{number, plural,one {# día} other {# días}}",
"intervals.full.hours": "{number, plural, one {# hora} other {# horas}}",
"intervals.full.minutes": "{number, plural, one {# minuto} other {# minutos}}",
"introduction.federation.action": "Seguinte",
"introduction.federation.federated.headline": "Federado",
"introduction.federation.federated.text": "Publicacións públicas desde outros servidores do fediverso aparecerán na liña temporal federada.",
"introduction.federation.home.headline": "Inicio",
"introduction.federation.home.text": "Publicacións de xente que vostede segue aparecerán no TL de Inicio. Pode seguir a calquera en calquer servidor!",
"introduction.federation.federated.text": "Publicacións públicas doutros servidores do fediverso aparecerán na cronoloxía federada.",
"introduction.federation.home.headline": "Páxina inicial",
"introduction.federation.home.text": "Publicacións de persoas que ti segues aparecerán na cronoloxía do inicio. Podes seguir calquera persoa en calquera servidor!",
"introduction.federation.local.headline": "Local",
"introduction.federation.local.text": "Publicacións públicas de xente no seu mesmo servidor aparecerán na liña temporal local.",
"introduction.federation.local.text": "Publicacións públicas de persoas no teu mesmo servidor aparecerán na cronoloxía local.",
"introduction.interactions.action": "Rematar titorial!",
"introduction.interactions.favourite.headline": "Favorito",
"introduction.interactions.favourite.text": "Pode gardar un toot para máis tarde, e facerlle saber a autora que lle gustou, dándolle a Favorito.",
"introduction.interactions.reblog.headline": "Promocionar",
"introduction.interactions.reblog.text": "Pode compartir os toots de outra xente coas súas seguidoras promocionándoos.",
"introduction.interactions.reply.headline": "Respostar",
"introduction.interactions.reply.text": "Pode respostar aos toots de outras persoas e aos seus propios, así quedarán encadeados nunha conversa.",
"introduction.interactions.favourite.text": "Podes gardar un toot para depois e facer saber ó autor que che gostou marcandoo coma favorito.",
"introduction.interactions.reblog.headline": "Promover",
"introduction.interactions.reblog.text": "Podes compartir os toots doutras persoas coas túas seguidoras.",
"introduction.interactions.reply.headline": "Responder",
"introduction.interactions.reply.text": "Podes responder ós toots doutras persoas e ós teus propios, así ficarán encadeados nunha conversa.",
"introduction.welcome.action": "Imos!",
"introduction.welcome.headline": "Primeiros pasos",
"introduction.welcome.text": "Benvida ao fediverso! Nun intre poderá difundir mensaxes e falar cos seus amigos nun gran número de servidores. Pero este servidor (dominio) é especial—hospeda o seu perfil, así que lémbreo.",
"keyboard_shortcuts.back": "voltar atrás",
"introduction.welcome.text": "Benvido ó fediverso! Nun intre poderás difundir mensaxes e falar coas túas amizades nun grande número de servidores. Mais este servidor, {domain}, é especial—hospeda o teu perfil, por iso lémbrate do seu nome.",
"keyboard_shortcuts.back": "para voltar atrás",
"keyboard_shortcuts.blocked": "abrir lista de usuarias bloqueadas",
"keyboard_shortcuts.boost": "promover",
"keyboard_shortcuts.column": "destacar un estado en unha das columnas",
"keyboard_shortcuts.compose": "Foco no área de escritura",
"keyboard_shortcuts.column": "para destacar un estado nunha das columnas",
"keyboard_shortcuts.compose": "para destacar a área de escritura",
"keyboard_shortcuts.description": "Descrición",
"keyboard_shortcuts.direct": "abrir columna de mensaxes directas",
"keyboard_shortcuts.down": "ir hacia abaixo na lista",
"keyboard_shortcuts.enter": "abrir estado",
"keyboard_shortcuts.favourite": "marcar como favorito",
"keyboard_shortcuts.favourites": "abrir lista de favoritos",
"keyboard_shortcuts.federated": "abrir liña temporal federada",
"keyboard_shortcuts.direct": "para abrir a columna de mensaxes directas",
"keyboard_shortcuts.down": "para mover cara abaixo na listaxe",
"keyboard_shortcuts.enter": "para abrir estado",
"keyboard_shortcuts.favourite": "para engadir a favoritos",
"keyboard_shortcuts.favourites": "para abrir a listaxe dos favoritos",
"keyboard_shortcuts.federated": "para abrir a cronoloxía federada",
"keyboard_shortcuts.heading": "Atallos do teclado",
"keyboard_shortcuts.home": "abrir liña temporal de inicio",
"keyboard_shortcuts.hotkey": "Tecla de acceso directo",
"keyboard_shortcuts.legend": "para mostrar esta lenda",
"keyboard_shortcuts.local": "abrir liña temporal local",
"keyboard_shortcuts.mention": "para mencionar o autor",
"keyboard_shortcuts.home": "para abrir a cronoloxía inicial",
"keyboard_shortcuts.hotkey": "Tecla de atallo",
"keyboard_shortcuts.legend": "para amosar esta lenda",
"keyboard_shortcuts.local": "para abrir a cronoloxía local",
"keyboard_shortcuts.mention": "para mencionar a autora",
"keyboard_shortcuts.muted": "abrir lista de usuarias acaladas",
"keyboard_shortcuts.my_profile": "abrir o seu perfil",
"keyboard_shortcuts.notifications": "abrir columna de notificacións",
"keyboard_shortcuts.pinned": "abrir lista de toots fixados",
"keyboard_shortcuts.profile": "abrir perfil da autora",
"keyboard_shortcuts.my_profile": "para abrir o teu perfil",
"keyboard_shortcuts.notifications": "para abrir a columna das notificacións",
"keyboard_shortcuts.open_media": "para abrir o contido multimedia",
"keyboard_shortcuts.pinned": "para abrir a listaxe dos toots fixados",
"keyboard_shortcuts.profile": "para abrir o perfil da autora",
"keyboard_shortcuts.reply": "para responder",
"keyboard_shortcuts.requests": "abrir lista de peticións de seguimento",
"keyboard_shortcuts.search": "para centrar a busca",
"keyboard_shortcuts.start": "abrir columna \"comezando\"",
"keyboard_shortcuts.toggle_hidden": "mostrar/agochar un texto detrás do AC",
"keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar medios",
"keyboard_shortcuts.toot": "escribir un toot novo",
"keyboard_shortcuts.unfocus": "quitar o foco do área de escritura/busca",
"keyboard_shortcuts.up": "ir hacia arriba na lista",
"keyboard_shortcuts.requests": "para abrir a listaxe das peticións de seguimento",
"keyboard_shortcuts.search": "para destacar a procura",
"keyboard_shortcuts.start": "para abrir a columna dos \"primeiros pasos\"",
"keyboard_shortcuts.toggle_hidden": "para amosar/agochar texto detrás do aviso de contido (AC)",
"keyboard_shortcuts.toggle_sensitivity": "para amosar/agochar contido multimedia",
"keyboard_shortcuts.toot": "para escribir un novo toot",
"keyboard_shortcuts.unfocus": "para deixar de destacar a área de escritura/procura",
"keyboard_shortcuts.up": "para mover cara arriba na listaxe",
"lightbox.close": "Fechar",
"lightbox.next": "Seguinte",
"lightbox.previous": "Anterior",
"lightbox.view_context": "Ver contexto",
"lists.account.add": "Engadir á lista",
"lists.account.remove": "Eliminar da lista",
"lists.delete": "Eliminar lista",
"lists.edit": "Editar lista",
"lists.edit.submit": "Cambiar título",
"lists.new.create": "Engadir lista",
"lists.new.title_placeholder": "Novo título da lista",
"lists.search": "Procurar entre a xente que segues",
"lists.subheading": "As túas listas",
"lightbox.view_context": "Ollar contexto",
"lists.account.add": "Engadir á listaxe",
"lists.account.remove": "Eliminar da listaxe",
"lists.delete": "Eliminar listaxe",
"lists.edit": "Editar listaxe",
"lists.edit.submit": "Mudar o título",
"lists.new.create": "Engadir listaxe",
"lists.new.title_placeholder": "Título da nova listaxe",
"lists.search": "Procurar entre as persoas que segues",
"lists.subheading": "As túas listaxes",
"load_pending": "{count, plural, one {# novo elemento} other {# novos elementos}}",
"loading_indicator.label": "Cargando...",
"media_gallery.toggle_visible": "Ocultar",
"loading_indicator.label": "Estase a cargar...",
"media_gallery.toggle_visible": "Trocar visibilidade",
"missing_indicator.label": "Non atopado",
"missing_indicator.sublabel": "Non se puido atopar o recurso",
"mute_modal.hide_notifications": "Esconder notificacións deste usuario?",
"navigation_bar.apps": "Apps móbiles",
"missing_indicator.sublabel": "Este recurso non foi atopado",
"mute_modal.hide_notifications": "Agochar notificacións desta usuaria?",
"navigation_bar.apps": "Aplicacións móbiles",
"navigation_bar.blocks": "Usuarias bloqueadas",
"navigation_bar.community_timeline": "Liña temporal local",
"navigation_bar.compose": "Escribir novo toot",
"navigation_bar.bookmarks": "Marcadores",
"navigation_bar.community_timeline": "Cronoloxía local",
"navigation_bar.compose": "Escribir un novo toot",
"navigation_bar.direct": "Mensaxes directas",
"navigation_bar.discover": "Descubrir",
"navigation_bar.domain_blocks": "Dominios agochados",
"navigation_bar.edit_profile": "Editar perfil",
"navigation_bar.favourites": "Favoritas",
"navigation_bar.filters": "Palabras acaladas",
"navigation_bar.favourites": "Favoritos",
"navigation_bar.filters": "Palabras silenciadas",
"navigation_bar.follow_requests": "Peticións de seguimento",
"navigation_bar.follows_and_followers": "Seguindo e seguidoras",
"navigation_bar.follows_and_followers": "Seguindo e seguidores",
"navigation_bar.info": "Sobre este servidor",
"navigation_bar.keyboard_shortcuts": "Atallos",
"navigation_bar.lists": "Listas",
"navigation_bar.logout": "Sair",
"navigation_bar.mutes": "Usuarias acaladas",
"navigation_bar.keyboard_shortcuts": "Atallos do teclado",
"navigation_bar.lists": "Listaxes",
"navigation_bar.logout": "Pechar sesión",
"navigation_bar.mutes": "Usuarias silenciadas",
"navigation_bar.personal": "Persoal",
"navigation_bar.pins": "Mensaxes fixadas",
"navigation_bar.pins": "Toots fixados",
"navigation_bar.preferences": "Preferencias",
"navigation_bar.public_timeline": "Liña temporal federada",
"navigation_bar.security": "Seguridade",
"notification.favourite": "{name} marcou como favorito o seu estado",
"notification.follow": "{name} está a seguila",
"navigation_bar.public_timeline": "Cronoloxía federada",
"navigation_bar.security": "Seguranza",
"notification.favourite": "{name} marcou o teu estado coma favorito",
"notification.follow": "{name} comezou a seguirte",
"notification.follow_request": "{name} solicitou seguirte",
"notification.mention": "{name} mencionoute",
"notification.poll": "Unha sondaxe na que votou xa rematou",
"notification.reblog": "{name} promoveu o seu estado",
"notification.own_poll": "A túa enquisa rematou",
"notification.poll": "Unha enquisa na que votaches rematou",
"notification.reblog": "{name} promoveu o teu estado",
"notifications.clear": "Limpar notificacións",
"notifications.clear_confirmation": "Estás seguro de que queres limpar permanentemente todas as túas notificacións?",
"notifications.clear_confirmation": "Tes a certeza de querer limpar de xeito permanente todas as túas notificacións?",
"notifications.column_settings.alert": "Notificacións de escritorio",
"notifications.column_settings.favourite": "Favoritas:",
"notifications.column_settings.filter_bar.advanced": "Mostrar todas as categorías",
"notifications.column_settings.favourite": "Favoritos:",
"notifications.column_settings.filter_bar.advanced": "Amosar todas as categorías",
"notifications.column_settings.filter_bar.category": "Barra de filtrado rápido",
"notifications.column_settings.filter_bar.show": "Mostrar",
"notifications.column_settings.filter_bar.show": "Amosar",
"notifications.column_settings.follow": "Novos seguidores:",
"notifications.column_settings.follow_request": "Novas peticións de seguimento:",
"notifications.column_settings.mention": "Mencións:",
"notifications.column_settings.poll": "Resultados da sondaxe:",
"notifications.column_settings.push": "Enviar notificacións",
"notifications.column_settings.poll": "Resultados da enquisa:",
"notifications.column_settings.push": "Notificacións emerxentes",
"notifications.column_settings.reblog": "Promocións:",
"notifications.column_settings.show": "Mostrar en columna",
"notifications.column_settings.show": "Amosar en columna",
"notifications.column_settings.sound": "Reproducir son",
"notifications.filter.all": "Todo",
"notifications.filter.boosts": "Promocións",
"notifications.filter.boosts": "Compartidos",
"notifications.filter.favourites": "Favoritos",
"notifications.filter.follows": "Seguimentos",
"notifications.filter.mentions": "Mencións",
"notifications.filter.polls": "Resultados da sondaxe",
"notifications.filter.polls": "Resultados da enquisa",
"notifications.group": "{count} notificacións",
"poll.closed": "Pechado",
"poll.refresh": "Actualizar",
"poll.total_people": "{count, plural,one {# persoa}other {# persoas}}",
"poll.total_votes": "{count, plural, one {# voto} outros {# votos}}",
"poll.total_votes": "{count, plural, one {# voto} other {# votos}}",
"poll.vote": "Votar",
"poll.voted": "Votou por esta opción",
"poll_button.add_poll": "Engadir sondaxe",
"poll_button.remove_poll": "Eliminar sondaxe",
"privacy.change": "Axustar a intimidade do estado",
"privacy.direct.long": "Enviar exclusivamente as usuarias mencionadas",
"privacy.direct.short": "Directa",
"privacy.private.long": "Enviar só as seguidoras",
"privacy.private.short": "Só-seguidoras",
"privacy.public.long": "Publicar na liña temporal pública",
"privacy.public.short": "Pública",
"privacy.unlisted.long": "Non publicar en liñas temporais públicas",
"privacy.unlisted.short": "Non listada",
"poll.voted": "Votaches por esta opción",
"poll_button.add_poll": "Engadir unha enquisa",
"poll_button.remove_poll": "Eliminar enquisa",
"privacy.change": "Axustar privacidade",
"privacy.direct.long": "Só para as usuarias mencionadas",
"privacy.direct.short": "Directo",
"privacy.private.long": "Só para os seguidores",
"privacy.private.short": "Só seguidores",
"privacy.public.long": "Publicar nas cronoloxías públicas",
"privacy.public.short": "Público",
"privacy.unlisted.long": "Non publicar nas cronoloxías públicas",
"privacy.unlisted.short": "Non listado",
"refresh": "Actualizar",
"regeneration_indicator.label": "Cargando…",
"regeneration_indicator.sublabel": "Estase a preparar a súa liña temporal de inicio!",
"regeneration_indicator.label": "Estase a cargar…",
"regeneration_indicator.sublabel": "Estase a preparar a túa cronoloxía de inicio!",
"relative_time.days": "{number}d",
"relative_time.hours": "{number}h",
"relative_time.just_now": "agora",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"reply_indicator.cancel": "Cancelar",
"relative_time.today": "hoxe",
"reply_indicator.cancel": "Desbotar",
"report.forward": "Reenviar a {target}",
"report.forward_hint": "A conta pertence a outro servidor. Enviar unha copia anónima do informe alí tamén?",
"report.hint": "O informe enviarase a moderación do seu servidor. Abaixo pode explicar a razón pola que está a informar:",
"report.forward_hint": "A conta é doutro servidor. Enviar unha copia anónima da denuncia aló tamén?",
"report.hint": "A denuncia enviarase á moderación do teu servidor. Abaixo podes explicar a razón pola que estás a denunciar:",
"report.placeholder": "Comentarios adicionais",
"report.submit": "Enviar",
"report.target": "Informar {target}",
"search.placeholder": "Buscar",
"search_popout.search_format": "Formato de busca avanzada",
"search_popout.tips.full_text": "Texto simple devolve estados que vostede escribeu, promoveu, marcou favoritos, ou foi mencionada, así como nomes de usuaria coincidentes, nomes públicos e etiquetas.",
"search_popout.tips.hashtag": "etiqueta",
"report.target": "Denunciar a {target}",
"search.placeholder": "Procurar",
"search_popout.search_format": "Formato de procura avanzada",
"search_popout.tips.full_text": "Texto simple devolve estados que ti escribiches, promoviches, marcaches favoritos, ou foches mencionada, así como nomes de usuaria coincidentes, nomes públicos e etiquetas.",
"search_popout.tips.hashtag": "cancelo",
"search_popout.tips.status": "estado",
"search_popout.tips.text": "Texto simple devolve coincidencias con nomes públicos, nomes de usuaria e etiquetas",
"search_popout.tips.user": "usuaria",
"search_results.accounts": "Xente",
"search_results.hashtags": "Etiquetas",
"search_results.accounts": "Persoas",
"search_results.hashtags": "Cancelos",
"search_results.statuses": "Toots",
"search_results.statuses_fts_disabled": "Non está activada neste servidor Mastodon a busca de toots polo seu contido.",
"search_results.total": "{count, number} {count,plural,one {result} outros {results}}",
"search_results.statuses_fts_disabled": "Procurar toots polo seu contido non está activado neste servidor do Mastodon.",
"search_results.total": "{count, number} {count, plural, one {resultado} other {resultados}}",
"status.admin_account": "Abrir interface de moderación para @{name}",
"status.admin_status": "Abrir este estado na interface de moderación",
"status.block": "Bloquear @{name}",
"status.cancel_reblog_private": "Non promover",
"status.cannot_reblog": "Esta mensaxe non pode ser promovida",
"status.copy": "Copiar ligazón ao estado",
"status.block": "Bloquear a @{name}",
"status.bookmark": "Marcar",
"status.cancel_reblog_private": "Desfacer compartido",
"status.cannot_reblog": "Esta publicación non pode ser promovida",
"status.copy": "Copiar ligazón ó estado",
"status.delete": "Eliminar",
"status.detailed_status": "Vista detallada da conversa",
"status.direct": "Mensaxe directa @{name}",
"status.embed": "Incrustar",
"status.favourite": "Favorita",
"status.direct": "Mensaxe directa a @{name}",
"status.embed": "Embeber nunha web",
"status.favourite": "Favorito",
"status.filtered": "Filtrado",
"status.load_more": "Cargar máis",
"status.local_only": "This post is only visible by other users of your instance",
"status.media_hidden": "Medios ocultos",
"status.media_hidden": "Contido multimedia agochado",
"status.mention": "Mencionar @{name}",
"status.more": "Máis",
"status.mute": "Acalar @{name}",
"status.mute_conversation": "Acalar conversa",
"status.mute": "Silenciar @{name}",
"status.mute_conversation": "Silenciar conversa",
"status.open": "Expandir este estado",
"status.pin": "Fixar no perfil",
"status.pinned": "Toot fixado",
"status.read_more": "Lea máis",
"status.read_more": "Ler máis",
"status.reblog": "Promover",
"status.reblog_private": "Promover a audiencia orixinal",
"status.reblog_private": "Compartir á audiencia orixinal",
"status.reblogged_by": "{name} promoveu",
"status.reblogs.empty": "Ninguén promoveu este toot polo de agora. Cando alguén o faga, mostraránse aquí.",
"status.redraft": "Eliminar & reescribir",
"status.reply": "Resposta",
"status.replyAll": "Resposta a conversa",
"status.report": "Informar @{name}",
"status.sensitive_warning": "Contido sensible",
"status.reblogs.empty": "Aínda ninguén promoveu este toot. Cando alguén o faga, amosarase aquí.",
"status.redraft": "Eliminar e reescribir",
"status.remove_bookmark": "Eliminar marcador",
"status.reply": "Responder",
"status.replyAll": "Responder ó fío",
"status.report": "Denunciar @{name}",
"status.sensitive_warning": "Contido sensíbel",
"status.share": "Compartir",
"status.show_less": "Mostrar menos",
"status.show_less_all": "Mostrar menos para todas",
"status.show_more": "Mostrar máis",
"status.show_more_all": "Mostrar máis para todas",
"status.show_thread": "Mostrar fío",
"status.uncached_media_warning": "Non dispoñible",
"status.unmute_conversation": "Non acalar a conversa",
"status.unpin": "Despegar do perfil",
"status.show_less": "Amosar menos",
"status.show_less_all": "Amosar menos para todos",
"status.show_more": "Amosar máis",
"status.show_more_all": "Amosar máis para todos",
"status.show_thread": "Amosar fío",
"status.uncached_media_warning": "Non dispoñíbel",
"status.unmute_conversation": "Deixar de silenciar conversa",
"status.unpin": "Desafixar do perfil",
"suggestions.dismiss": "Rexeitar suxestión",
"suggestions.header": "Podería estar interesada en…",
"tabs_bar.federated_timeline": "Federado",
"suggestions.header": "Poderíache interesar…",
"tabs_bar.federated_timeline": "Federada",
"tabs_bar.home": "Inicio",
"tabs_bar.local_timeline": "Local",
"tabs_bar.notifications": "Notificacións",
"tabs_bar.search": "Buscar",
"time_remaining.days": "{number, plural, one {# dia} other {# días}} restantes",
"tabs_bar.search": "Procurar",
"time_remaining.days": "{number, plural, one {# día} other {# días}} restantes",
"time_remaining.hours": "{number, plural, one {# hora} other {# horas}} restantes",
"time_remaining.minutes": "{number, plural, one {# minuto} other {# minutos}} restantes",
"time_remaining.moments": "Está rematando",
"time_remaining.moments": "Momentos restantes",
"time_remaining.seconds": "{number, plural, one {# segundo} other {# segundos}} restantes",
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} outras {people}} conversando",
"trends.count_by_accounts": "{count} {rawCount, plural, one {persoa} other {persoas}} falando",
"trends.trending_now": "Tendencias actuais",
"ui.beforeunload": "O borrador perderase se sae de Mastodon.",
"upload_area.title": "Arrastre e solte para subir",
"upload_button.label": "Engadir medios ({formats})",
"upload_error.limit": "Excedeu o límite de subida de ficheiros.",
"upload_error.poll": "Non se poden subir ficheiros nas sondaxes.",
"upload_form.description": "Describa para deficientes visuais",
"ui.beforeunload": "O borrador perderase se saes do Mastodon.",
"upload_area.title": "Arrastra e solta para subir",
"upload_button.label": "Engadir multimedia ({formats})",
"upload_error.limit": "Límite máximo do ficheiro a subir excedido.",
"upload_error.poll": "Non se poden subir ficheiros nas enquisas.",
"upload_form.audio_description": "Describir para persoas con problemas auditivos",
"upload_form.description": "Describir para persoas con problemas visuais",
"upload_form.edit": "Editar",
"upload_form.undo": "Eliminar",
"upload_modal.analyzing_picture": "Analizando imaxe…",
"upload_form.video_description": "Describir para persoas con problemas visuais ou auditivos",
"upload_modal.analyzing_picture": "Estase a analizar a imaxe…",
"upload_modal.apply": "Aplicar",
"upload_modal.description_placeholder": "Un raposo moi feitiño salta sobre o can preguiceiro",
"upload_modal.description_placeholder": "Un raposo veloz brinca sobre o can preguiceiro",
"upload_modal.detect_text": "Detectar texto na imaxe",
"upload_modal.edit_media": "Editar medios",
"upload_modal.hint": "Prema ou arrastre o círculo na vista previa para escolle o punto focal que se vena vista de todas as miniaturas.",
"upload_modal.edit_media": "Editar multimedia",
"upload_modal.hint": "Preme ou arrastra o círculo na vista previa para escoller o punto focal que sempre estaá vista en todas as miniaturas.",
"upload_modal.preview_label": "Vista previa ({ratio})",
"upload_progress.label": "Subindo...",
"video.close": "Pechar video",
"upload_progress.label": "Estase a subir...",
"video.close": "Pechar vídeo",
"video.download": "Baixar ficheiro",
"video.exit_fullscreen": "Saír da pantalla completa",
"video.expand": "Expandir vídeo",
"video.fullscreen": "Pantalla completa",
"video.hide": "Agochar vídeo",
"video.mute": "Acalar son",
"video.pause": "Pausar",
"video.mute": "Silenciar son",
"video.pause": "Deter",
"video.play": "Reproducir",
"video.unmute": "Permitir son"
}

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "הוסף או הסר מהרשימות",
"account.badges.bot": "בוט",
"account.badges.group": "Group",
"account.block": "חסימת @{name}",
"account.block_domain": "להסתיר הכל מהקהילה {domain}",
"account.blocked": "חסום",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "אירעה שגיאה בלתי צפויה.",
"alert.unexpected.title": "אופס!",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} per week",
"boost_modal.combo": "ניתן להקיש {combo} כדי לדלג בפעם הבאה",
"bundle_column_error.body": "משהו השתבש בעת הצגת הרכיב הזה.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "משהו השתבש בעת טעינת הרכיב הזה.",
"bundle_modal_error.retry": "לנסות שוב",
"column.blocks": "חסימות",
"column.bookmarks": "Bookmarks",
"column.community": "ציר זמן מקומי",
"column.direct": "Direct messages",
"column.directory": "Browse profiles",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "ללחוש",
"compose_form.publish_loud": "לחצרץ!",
"compose_form.sensitive.hide": "Mark media as sensitive",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "No toots here!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "You haven't blocked any users yet.",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "טור הסביבה ריק. יש לפרסם משהו כדי שדברים יתרחילו להתגלגל!",
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
"empty_column.domain_blocks": "There are no hidden domains yet.",
@ -183,6 +189,8 @@
"home.column_settings.basic": "למתחילים",
"home.column_settings.show_reblogs": "הצגת הדהודים",
"home.column_settings.show_replies": "הצגת תגובות",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "to open muted users list",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.notifications": "to open notifications column",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "to open pinned toots list",
"keyboard_shortcuts.profile": "to open author's profile",
"keyboard_shortcuts.reply": "לענות",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "להסתיר הודעות מחשבון זה?",
"navigation_bar.apps": "Mobile apps",
"navigation_bar.blocks": "חסימות",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "ציר זמן מקומי",
"navigation_bar.compose": "Compose new toot",
"navigation_bar.direct": "Direct messages",
@ -278,7 +288,9 @@
"navigation_bar.security": "Security",
"notification.favourite": "חצרוצך חובב על ידי {name}",
"notification.follow": "{name} במעקב אחרייך",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "אוזכרת על ידי {name}",
"notification.own_poll": "Your poll has ended",
"notification.poll": "A poll you have voted in has ended",
"notification.reblog": "חצרוצך הודהד על ידי {name}",
"notifications.clear": "הסרת התראות",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.follow": "עוקבים חדשים:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "פניות:",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.push": "הודעות בדחיפה",
@ -327,6 +340,7 @@
"relative_time.just_now": "כרגע",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "today",
"reply_indicator.cancel": "ביטול",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
@ -349,6 +363,7 @@
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Block @{name}",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "Unboost",
"status.cannot_reblog": "לא ניתן להדהד הודעה זו",
"status.copy": "Copy link to status",
@ -374,6 +389,7 @@
"status.reblogged_by": "הודהד על ידי {name}",
"status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "תגובה",
"status.replyAll": "תגובה לכולם",
"status.report": "דיווח על @{name}",
@ -406,9 +422,11 @@
"upload_button.label": "הוספת מדיה",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "תיאור לכבדי ראיה",
"upload_form.edit": "Edit",
"upload_form.undo": "ביטול",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Preview ({ratio})",
"upload_progress.label": "עולה...",
"video.close": "סגירת וידאו",
"video.download": "Download file",
"video.exit_fullscreen": "יציאה ממסך מלא",
"video.expand": "להרחיב וידאו",
"video.fullscreen": "Full screen",

View File

@ -1,153 +1,159 @@
{
"account.add_or_remove_from_list": "Add or Remove from lists",
"account.badges.bot": "Bot",
"account.block": "Block @{name}",
"account.block_domain": "Hide everything from {domain}",
"account.blocked": "Blocked",
"account.cancel_follow_request": "Cancel follow request",
"account.direct": "Direct message @{name}",
"account.domain_blocked": "Domain hidden",
"account.edit_profile": "Edit profile",
"account.endorse": "Feature on profile",
"account.follow": "Follow",
"account.followers": "Followers",
"account.followers.empty": "No one follows this user yet.",
"account.follows": "Follows",
"account.follows.empty": "This user doesn't follow anyone yet.",
"account.follows_you": "Follows you",
"account.hide_reblogs": "Hide boosts from @{name}",
"account.last_status": "Last active",
"account.link_verified_on": "Ownership of this link was checked on {date}",
"account.locked_info": "This account privacy status is set to locked. The owner manually reviews who can follow them.",
"account.media": "Media",
"account.mention": "Mention @{name}",
"account.moved_to": "{name} has moved to:",
"account.mute": "Mute @{name}",
"account.mute_notifications": "Mute notifications from @{name}",
"account.muted": "Muted",
"account.never_active": "Never",
"account.posts": "Toots",
"account.posts_with_replies": "Toots and replies",
"account.report": "Report @{name}",
"account.requested": "Awaiting approval. Click to cancel follow request",
"account.share": "Share @{name}'s profile",
"account.show_reblogs": "Show boosts from @{name}",
"account.unblock": "Unblock @{name}",
"account.unblock_domain": "Unhide {domain}",
"account.unendorse": "Don't feature on profile",
"account.unfollow": "Unfollow",
"account.unmute": "Unmute @{name}",
"account.unmute_notifications": "Unmute notifications from @{name}",
"alert.rate_limited.message": "Please retry after {retry_time, time, medium}.",
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "An unexpected error occurred.",
"alert.unexpected.title": "Oops!",
"autosuggest_hashtag.per_week": "{count} per week",
"boost_modal.combo": "You can press {combo} to skip this next time",
"bundle_column_error.body": "Something went wrong while loading this component.",
"bundle_column_error.retry": "Try again",
"bundle_column_error.title": "Network error",
"bundle_modal_error.close": "Close",
"bundle_modal_error.message": "Something went wrong while loading this component.",
"bundle_modal_error.retry": "Try again",
"column.blocks": "Blocked users",
"column.community": "Local timeline",
"column.direct": "Direct messages",
"column.directory": "Browse profiles",
"column.domain_blocks": "Hidden domains",
"column.favourites": "Favourites",
"column.follow_requests": "Follow requests",
"column.home": "Home",
"column.lists": "Lists",
"column.mutes": "Muted users",
"column.notifications": "Notifications",
"column.pins": "Pinned toot",
"column.public": "Federated timeline",
"column_back_button.label": "Back",
"column_header.hide_settings": "Hide settings",
"column_header.moveLeft_settings": "Move column to the left",
"column_header.moveRight_settings": "Move column to the right",
"column_header.pin": "Pin",
"column_header.show_settings": "Show settings",
"column_header.unpin": "Unpin",
"column_subheading.settings": "Settings",
"community.column_settings.media_only": "Media Only",
"account.add_or_remove_from_list": "सूची में जोड़ें या हटाए",
"account.badges.bot": "बॉट",
"account.badges.group": "Group",
"account.block": "@{name} को ब्लॉक करें",
"account.block_domain": "{domain} के सारी चीज़े छुपाएं",
"account.blocked": "ब्लॉक",
"account.cancel_follow_request": "फ़ॉलो रिक्वेस्ट रद्द करें",
"account.direct": "प्रत्यक्ष संदेश @{name}",
"account.domain_blocked": "छिपा हुआ डोमेन",
"account.edit_profile": "प्रोफ़ाइल संपादित करें",
"account.endorse": "प्रोफ़ाइल पर दिखाए",
"account.follow": "फॉलो करें",
"account.followers": "फॉलोवर",
"account.followers.empty": "कोई भी इस यूज़र् को फ़ॉलो नहीं करता है",
"account.follows": "फॉलो करें",
"account.follows.empty": "यह यूज़र् अभी तक किसी को फॉलो नहीं करता है।",
"account.follows_you": "आपको फॉलो करता है",
"account.hide_reblogs": "@{name} के बूस्ट छुपाएं",
"account.last_status": "अंतिम सक्रिय",
"account.link_verified_on": "इस लिंक का स्वामित्व {date} को चेक किया गया था",
"account.locked_info": "यह खाता गोपनीयता स्थिति लॉक करने के लिए सेट है। मालिक मैन्युअल रूप से समीक्षा करता है कि कौन उनको फॉलो कर सकता है।",
"account.media": "मीडिया",
"account.mention": "उल्लेख @{name}",
"account.moved_to": "{name} स्थानांतरित हो गया:",
"account.mute": "म्यूट @{name}",
"account.mute_notifications": "@{name} के नोटिफिकेशन म्यूट करे",
"account.muted": "म्यूट है",
"account.never_active": "कभी नहीं दिखे",
"account.posts": "टूट्स",
"account.posts_with_replies": "टूट्स एवं जवाब",
"account.report": "रिपोर्ट @{name}",
"account.requested": "मंजूरी का इंतजार। फॉलो रिक्वेस्ट को रद्द करने के लिए क्लिक करें",
"account.share": "@{name} की प्रोफाइल शेयर करे",
"account.show_reblogs": "@{name} के बूस्ट दिखाए",
"account.unblock": "@{name} को अनब्लॉक करें",
"account.unblock_domain": "{domain} दिखाए",
"account.unendorse": "प्रोफ़ाइल पर न दिखाए",
"account.unfollow": "अनफॉलो करें",
"account.unmute": "अनम्यूट @{name}",
"account.unmute_notifications": "@{name} के नोटिफिकेशन अनम्यूट करे",
"alert.rate_limited.message": "कृप्या {retry_time, time, medium} के बाद दुबारा कोशिश करें",
"alert.rate_limited.title": "सीमित दर",
"alert.unexpected.message": "एक अप्रत्याशित त्रुटि हुई है!",
"alert.unexpected.title": "उफ़!",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} हर सप्ताह",
"boost_modal.combo": "अगली बार स्किप करने के लिए आप {combo} दबा सकते है",
"bundle_column_error.body": "इस कॉम्पोनेन्ट को लोड करते वक्त कुछ गलत हो गया",
"bundle_column_error.retry": "दुबारा कोशिश करें",
"bundle_column_error.title": "नेटवर्क त्रुटि",
"bundle_modal_error.close": "बंद",
"bundle_modal_error.message": "इस कॉम्पोनेन्ट को लोड करते वक्त कुछ गलत हो गया",
"bundle_modal_error.retry": "दुबारा कोशिश करें",
"column.blocks": "ब्लॉक्ड यूज़र्स",
"column.bookmarks": "Bookmarks",
"column.community": "लोकल टाइम्लाइन",
"column.direct": "सीधा संदेश",
"column.directory": "प्रोफाइल्स खोजें",
"column.domain_blocks": "छुपे डोमेन्स",
"column.favourites": "पसंदीदा",
"column.follow_requests": "फॉलो रिक्वेस्ट्स",
"column.home": "होम",
"column.lists": "सूचियाँ",
"column.mutes": "म्यूट किये हुए यूजर",
"column.notifications": "नोटिफिकेशन्स",
"column.pins": "पिनड टूट्स",
"column.public": "फ़ेडरेटेड टाइम्लाइन",
"column_back_button.label": "पीछे जाए",
"column_header.hide_settings": "सेटिंग्स छुपाए",
"column_header.moveLeft_settings": "कॉलम को बाएं ले जाये",
"column_header.moveRight_settings": "कॉलम को दाएं ले जाये",
"column_header.pin": "पिन",
"column_header.show_settings": "सेटिंग्स दिखाएँ",
"column_header.unpin": "अनपिन",
"column_subheading.settings": "सेटिंग्स",
"community.column_settings.media_only": "सिर्फ़ मीडिया",
"compose_form.direct_message_warning": "This toot will only be sent to all the mentioned users.",
"compose_form.direct_message_warning_learn_more": "Learn more",
"compose_form.hashtag_warning": "This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.",
"compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.",
"compose_form.lock_disclaimer.lock": "locked",
"compose_form.direct_message_warning_learn_more": "और जानें",
"compose_form.hashtag_warning": "यह टूट् किसी भी हैशटैग के तहत सूचीबद्ध नहीं होगा क्योंकि यह अनलिस्टेड है। हैशटैग द्वारा केवल सार्वजनिक टूट्स खोजे जा सकते हैं।",
"compose_form.lock_disclaimer": "आपका खाता {locked} नहीं है। आपको केवल फॉलोवर्स को दिखाई दिए जाने वाले पोस्ट देखने के लिए कोई भी फॉलो कर सकता है।",
"compose_form.lock_disclaimer.lock": "लॉक्ड",
"compose_form.placeholder": "What is on your mind?",
"compose_form.poll.add_option": "Add a choice",
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.publish": "Toot",
"compose_form.poll.add_option": "विकल्प जोड़े",
"compose_form.poll.duration": "चुनाव की अवधि",
"compose_form.poll.option_placeholder": "कुल विकल्प {number}",
"compose_form.poll.remove_option": "इस विकल्प को हटाएँ",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "टूट्",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Mark media as sensitive",
"compose_form.sensitive.marked": "Media is marked as sensitive",
"compose_form.sensitive.unmarked": "Media is not marked as sensitive",
"compose_form.spoiler.marked": "Text is hidden behind warning",
"compose_form.spoiler.unmarked": "Text is not hidden",
"compose_form.spoiler_placeholder": "Write your warning here",
"confirmation_modal.cancel": "Cancel",
"confirmations.block.block_and_report": "Block & Report",
"confirmations.block.confirm": "Block",
"confirmations.block.message": "Are you sure you want to block {name}?",
"confirmations.delete.confirm": "Delete",
"confirmations.delete.message": "Are you sure you want to delete this status?",
"confirmations.delete_list.confirm": "Delete",
"confirmations.delete_list.message": "Are you sure you want to permanently delete this list?",
"confirmations.domain_block.confirm": "Hide entire domain",
"confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.",
"confirmations.logout.confirm": "Log out",
"confirmations.logout.message": "Are you sure you want to log out?",
"confirmations.mute.confirm": "Mute",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.message": "Are you sure you want to mute {name}?",
"confirmations.redraft.confirm": "Delete & redraft",
"confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.",
"confirmations.reply.confirm": "Reply",
"confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"confirmations.unfollow.confirm": "Unfollow",
"confirmations.unfollow.message": "Are you sure you want to unfollow {name}?",
"conversation.delete": "Delete conversation",
"conversation.mark_as_read": "Mark as read",
"conversation.open": "View conversation",
"conversation.with": "With {names}",
"directory.federated": "From known fediverse",
"directory.local": "From {domain} only",
"directory.new_arrivals": "New arrivals",
"directory.recently_active": "Recently active",
"embed.instructions": "Embed this status on your website by copying the code below.",
"embed.preview": "Here is what it will look like:",
"emoji_button.activity": "Activity",
"emoji_button.custom": "Custom",
"emoji_button.flags": "Flags",
"emoji_button.food": "Food & Drink",
"emoji_button.label": "Insert emoji",
"emoji_button.nature": "Nature",
"emoji_button.not_found": "No emojos!! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "Objects",
"emoji_button.people": "People",
"emoji_button.recent": "Frequently used",
"emoji_button.search": "Search...",
"emoji_button.search_results": "Search results",
"emoji_button.symbols": "Symbols",
"emoji_button.travel": "Travel & Places",
"empty_column.account_timeline": "No toots here!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "You haven't blocked any users yet.",
"empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
"empty_column.domain_blocks": "There are no hidden domains yet.",
"empty_column.favourited_statuses": "You don't have any favourite toots yet. When you favourite one, it will show up here.",
"empty_column.favourites": "No one has favourited this toot yet. When someone does, they will show up here.",
"empty_column.follow_requests": "You don't have any follow requests yet. When you receive one, it will show up here.",
"empty_column.hashtag": "There is nothing in this hashtag yet.",
"empty_column.home": "Your home timeline is empty! Visit {public} or use search to get started and meet other users.",
"empty_column.home.public_timeline": "the public timeline",
"empty_column.list": "There is nothing in this list yet. When members of this list post new statuses, they will appear here.",
"compose_form.sensitive.hide": "मीडिया को संवेदनशील के रूप में चिह्नित करें",
"compose_form.sensitive.marked": "मीडिया संवेदनशील के रूप में चिह्नित है",
"compose_form.sensitive.unmarked": "मीडिया संवेदनशील के रूप में चिह्नित नहीं है",
"compose_form.spoiler.marked": "चेतावनी के पीछे टेक्स्ट छिपा है",
"compose_form.spoiler.unmarked": "टेक्स्ट छिपा नहीं है",
"compose_form.spoiler_placeholder": "अपनी चेतावनी यहाँ लिखें",
"confirmation_modal.cancel": "रद्द करें",
"confirmations.block.block_and_report": "ब्लॉक एवं रिपोर्ट",
"confirmations.block.confirm": "ब्लॉक",
"confirmations.block.message": "क्या आप वाकई {name} को ब्लॉक करना चाहते हैं?",
"confirmations.delete.confirm": "मिटाए",
"confirmations.delete.message": "क्या आप वाकई इस स्टेटस को हटाना चाहते हैं?",
"confirmations.delete_list.confirm": "मिटाए",
"confirmations.delete_list.message": "क्या आप वाकई इस लिस्ट को हमेशा के लिये मिटाना चाहते हैं?",
"confirmations.domain_block.confirm": "संपूर्ण डोमेन छिपाएं",
"confirmations.domain_block.message": "क्या आप वास्तव में, वास्तव में आप पूरे {domain} को ब्लॉक करना चाहते हैं? ज्यादातर मामलों में कुछ लक्षित ब्लॉक या म्यूट पर्याप्त और बेहतर हैं। आप किसी भी सार्वजनिक समय-सीमा या अपनी सूचनाओं में उस डोमेन की सामग्री नहीं देखेंगे। उस डोमेन से आपके फॉलोवर्स को हटा दिया जाएगा।",
"confirmations.logout.confirm": "लॉग आउट करें",
"confirmations.logout.message": "आप सुनिश्चित हैं कि लॉगआउट करना चाहते हैं?",
"confirmations.mute.confirm": "शांत",
"confirmations.mute.explanation": "यह उनसे और पोस्टों का उल्लेख करते हुए उनसे छिपाएगा, लेकिन यह अभी भी उन्हें आपकी पोस्ट देखने और आपको फॉलो करने की अनुमति देगा।",
"confirmations.mute.message": "क्या आप वाकई {name} को शांत करना चाहते हैं?",
"confirmations.redraft.confirm": "मिटायें और पुनःप्रारूपण करें",
"confirmations.redraft.message": "क्या आप वाकई इस स्टेटस को हटाना चाहते हैं और इसे फिर से ड्राफ्ट करना चाहते हैं? पसंदीदा और बूस्ट खो जाएंगे, और मूल पोस्ट के उत्तर अनाथ हो जाएंगे।",
"confirmations.reply.confirm": "उत्तर दें",
"confirmations.reply.message": "अब उत्तर देना उस संदेश को अधिलेखित कर देगा जो आप वर्तमान में बना रहे हैं। क्या आप सुनिश्चित रूप से आगे बढ़ना चाहते हैं?",
"confirmations.unfollow.confirm": "अनफॉलो करें",
"confirmations.unfollow.message": "क्या आप वाकई {name} को अनफॉलो करना चाहते हैं?",
"conversation.delete": "वार्तालाप हटाएँ",
"conversation.mark_as_read": "पढ़ा गया के रूप में चिह्नित करें",
"conversation.open": "वार्तालाप देखें",
"conversation.with": "{names} के साथ",
"directory.federated": "ज्ञात फेडीवर्स से",
"directory.local": "केवल {domain} से",
"directory.new_arrivals": "नए आगंतुक",
"directory.recently_active": "हाल में ही सक्रिय",
"embed.instructions": "अपने वेबसाइट पर, निचे दिए कोड को कॉपी करके, इस स्टेटस को एम्बेड करें",
"embed.preview": "यह ऐसा दिखेगा :",
"emoji_button.activity": "गतिविधि",
"emoji_button.custom": "निजीकृत",
"emoji_button.flags": "झंडे",
"emoji_button.food": "भोजन एवं पेय",
"emoji_button.label": "इमोजी डाले",
"emoji_button.nature": "प्रकृति",
"emoji_button.not_found": "कोई इमोजी नहीं मिला! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "वस्तुएं",
"emoji_button.people": "लोग",
"emoji_button.recent": "अक्सर इस्तेमाल किया जाने वाला",
"emoji_button.search": "खोजें",
"emoji_button.search_results": "खोज परिणाम",
"emoji_button.symbols": "प्रतीक",
"emoji_button.travel": "यात्रा एवं स्थान",
"empty_column.account_timeline": "सन्नाटा! यहां कोई टूट्स नहीं!",
"empty_column.account_unavailable": "प्रोफाइल उपलब्ध नहीं",
"empty_column.blocks": "आप अभी तक किसी भी यूजर के द्वारा ब्लॉक्ड नहीं हो।",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "लोकल टाइम्लाइन खाली है, कुछ देखने के लिये सार्वजनिक रूप से कुछ लिखें!",
"empty_column.direct": "आपके पास कोई सीधा सन्देश नहीं है, जब आप कोई भेजेंगे प्राप्त करेंगे तो यहाँ दिखेगा।",
"empty_column.domain_blocks": "अभी तक कोई छुपा हुआ डोमेन नहीं है।",
"empty_column.favourited_statuses": "आपके पास अभी कोई भी चहिता टूट नहीं है. जब आप किसी टूट को पसंद (स्टार) करेंगे, तब वो यहाँ दिखेगा।",
"empty_column.favourites": "अभी तक किसी ने भी इस टूट को पसंद (स्टार) नहीं किया है. जब भी कोई इसे पसंद करेगा, उनका नाम यहाँ दिखेगा।",
"empty_column.follow_requests": "अभी तक किसी ने भी आपका अनुसरण करने की विनती नहीं की है. जब भी कोई आपको विनती भेजेगा, वो यहाँ दिखेगी.",
"empty_column.hashtag": "यह हैशटैग अभी तक खाली है।",
"empty_column.home": "आपकी मुख्य कालक्रम अभी खली है. अन्य उपयोगकर्ताओं से मिलने के लिए और अपनी गतिविधियां शुरू करने के लिए या तो {public} पर जाएं या खोज का उपयोग करें।",
"empty_column.home.public_timeline": "सार्वजनिक कालक्रम",
"empty_column.list": "यह सूची अभी खाली है. जब इसके सदस्य कोई अभिव्यक्ति देंगे, तो वो यहां दिखाई देंगी.",
"empty_column.lists": "You don't have any lists yet. When you create one, it will show up here.",
"empty_column.mutes": "You haven't muted any users yet.",
"empty_column.notifications": "You don't have any notifications yet. Interact with others to start the conversation.",
@ -155,80 +161,83 @@
"error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
"error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.report_issue": "Report issue",
"errors.unexpected_crash.report_issue": "समस्या सूचित करें",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
"federation.federated.short": "Federated",
"federation.local_only.long": "Restrict this toot only to my instance",
"federation.local_only.short": "Local-only",
"follow_request.authorize": "Authorize",
"follow_request.reject": "Reject",
"getting_started.developers": "Developers",
"getting_started.directory": "Profile directory",
"getting_started.documentation": "Documentation",
"getting_started.heading": "Getting started",
"getting_started.invite": "Invite people",
"getting_started.open_source_notice": "Mastodon is open source software. You can contribute or report issues on GitHub at {github}.",
"getting_started.security": "Security",
"getting_started.terms": "Terms of service",
"hashtag.column_header.tag_mode.all": "and {additional}",
"hashtag.column_header.tag_mode.any": "or {additional}",
"hashtag.column_header.tag_mode.none": "without {additional}",
"hashtag.column_settings.select.no_options_message": "No suggestions found",
"hashtag.column_settings.select.placeholder": "Enter hashtags…",
"hashtag.column_settings.tag_mode.all": "All of these",
"hashtag.column_settings.tag_mode.any": "Any of these",
"hashtag.column_settings.tag_mode.none": "None of these",
"follow_request.authorize": "अधिकार दें",
"follow_request.reject": "अस्वीकार करें",
"getting_started.developers": "डेवॅलपर्स",
"getting_started.directory": "प्रोफ़ाइल निर्देशिका",
"getting_started.documentation": "प्रलेखन",
"getting_started.heading": "पहले कदम रखें",
"getting_started.invite": "दोस्तों को आमंत्रित करें",
"getting_started.open_source_notice": "मास्टोडॉन एक मुक्त स्रोत सॉफ्टवेयर है. आप गिटहब {github} पर इस सॉफ्टवेयर में योगदान या किसी भी समस्या को सूचित कर सकते है.",
"getting_started.security": "अकाउंट सेटिंग्स",
"getting_started.terms": "सेवा की शर्तें",
"hashtag.column_header.tag_mode.all": "और {additional}",
"hashtag.column_header.tag_mode.any": "या {additional}",
"hashtag.column_header.tag_mode.none": "बिना {additional}",
"hashtag.column_settings.select.no_options_message": "कोई सुझाव नहीं मिला",
"hashtag.column_settings.select.placeholder": "हैशटैग लिखें...",
"hashtag.column_settings.tag_mode.all": "यह सभी",
"hashtag.column_settings.tag_mode.any": "इनमें से कोई भी",
"hashtag.column_settings.tag_mode.none": "इनमें से कोई भी नहीं",
"hashtag.column_settings.tag_toggle": "Include additional tags in this column",
"home.column_settings.basic": "Basic",
"home.column_settings.show_reblogs": "Show boosts",
"home.column_settings.show_replies": "Show replies",
"home.column_settings.basic": "बुनियादी",
"home.column_settings.show_reblogs": "बूस्ट दिखाए",
"home.column_settings.show_replies": "जवाबों को दिखाए",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
"introduction.federation.action": "Next",
"introduction.federation.federated.headline": "Federated",
"introduction.federation.action": "अगला",
"introduction.federation.federated.headline": "फ़ेडरेटेड",
"introduction.federation.federated.text": "Public posts from other servers of the fediverse will appear in the federated timeline.",
"introduction.federation.home.headline": "Home",
"introduction.federation.home.headline": "होम",
"introduction.federation.home.text": "Posts from people you follow will appear in your home feed. You can follow anyone on any server!",
"introduction.federation.local.headline": "Local",
"introduction.federation.local.headline": "लोकल",
"introduction.federation.local.text": "Public posts from people on the same server as you will appear in the local timeline.",
"introduction.interactions.action": "Finish toot-orial!",
"introduction.interactions.favourite.headline": "Favourite",
"introduction.interactions.favourite.headline": "पसंदीदा",
"introduction.interactions.favourite.text": "You can save a toot for later, and let the author know that you liked it, by favouriting it.",
"introduction.interactions.reblog.headline": "Boost",
"introduction.interactions.reblog.headline": "बूस्ट",
"introduction.interactions.reblog.text": "You can share other people's toots with your followers by boosting them.",
"introduction.interactions.reply.headline": "Reply",
"introduction.interactions.reply.headline": "जवाब",
"introduction.interactions.reply.text": "You can reply to other people's and your own toots, which will chain them together in a conversation.",
"introduction.welcome.action": "Let's go!",
"introduction.welcome.headline": "First steps",
"introduction.welcome.action": "आइए शुरू करते हैं!",
"introduction.welcome.headline": "पहले कदम",
"introduction.welcome.text": "Welcome to the fediverse! In a few moments, you'll be able to broadcast messages and talk to your friends across a wide variety of servers. But this server, {domain}, is special—it hosts your profile, so remember its name.",
"keyboard_shortcuts.back": "to navigate back",
"keyboard_shortcuts.blocked": "to open blocked users list",
"keyboard_shortcuts.boost": "to boost",
"keyboard_shortcuts.column": "to focus a status in one of the columns",
"keyboard_shortcuts.compose": "to focus the compose textarea",
"keyboard_shortcuts.description": "Description",
"keyboard_shortcuts.direct": "to open direct messages column",
"keyboard_shortcuts.down": "to move down in the list",
"keyboard_shortcuts.enter": "to open status",
"keyboard_shortcuts.favourite": "to favourite",
"keyboard_shortcuts.favourites": "to open favourites list",
"keyboard_shortcuts.federated": "to open federated timeline",
"keyboard_shortcuts.compose": "कंपोज़ टेक्स्ट-एरिया पर ध्यान केंद्रित करने के लिए",
"keyboard_shortcuts.description": "विवरण",
"keyboard_shortcuts.direct": "सीधा सन्देश कॉलम को खोलने के लिए",
"keyboard_shortcuts.down": "सूची में शामिल करने के लिए",
"keyboard_shortcuts.enter": "स्टेटस खोलने के लिए",
"keyboard_shortcuts.favourite": "पसंदीदा के लिए",
"keyboard_shortcuts.favourites": "पसंदीदा सूची खोलने के लिए",
"keyboard_shortcuts.federated": "फ़ैडरेटेड टाइम्लाइन खोलने के लिए",
"keyboard_shortcuts.heading": "Keyboard Shortcuts",
"keyboard_shortcuts.home": "to open home timeline",
"keyboard_shortcuts.hotkey": "Hotkey",
"keyboard_shortcuts.legend": "to display this legend",
"keyboard_shortcuts.local": "to open local timeline",
"keyboard_shortcuts.mention": "to mention author",
"keyboard_shortcuts.muted": "to open muted users list",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.notifications": "to open notifications column",
"keyboard_shortcuts.pinned": "to open pinned toots list",
"keyboard_shortcuts.profile": "to open author's profile",
"keyboard_shortcuts.reply": "to reply",
"keyboard_shortcuts.requests": "to open follow requests list",
"keyboard_shortcuts.search": "to focus search",
"keyboard_shortcuts.home": "होम टाइम्लाइन खोलने के लिए",
"keyboard_shortcuts.hotkey": "हॉट-की",
"keyboard_shortcuts.legend": "इस लीजेंड को दिखाने के लिए",
"keyboard_shortcuts.local": "लोकल टाइम्लाइन खोलने के लिए",
"keyboard_shortcuts.mention": "लेखक को मेन्शन करने के लिए",
"keyboard_shortcuts.muted": "म्यूटेड यूजर की लिस्ट खोलने के लिए",
"keyboard_shortcuts.my_profile": "आपकी प्रोफाइल खोलने के लिए",
"keyboard_shortcuts.notifications": "नोटिफिकेशन कॉलम खोलने के लिए",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "पिनड टूट्स की लिस्ट खोलने के लिए",
"keyboard_shortcuts.profile": "लेखक की प्रोफाइल खोलने के लिए",
"keyboard_shortcuts.reply": "जवाब के लिए",
"keyboard_shortcuts.requests": "फॉलो रिक्वेस्ट लिस्ट खोलने के लिए",
"keyboard_shortcuts.search": "गहरी खोज के लिए",
"keyboard_shortcuts.start": "to open \"get started\" column",
"keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW",
"keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
@ -249,15 +258,16 @@
"lists.search": "Search among people you follow",
"lists.subheading": "Your lists",
"load_pending": "{count, plural, one {# new item} other {# new items}}",
"loading_indicator.label": "Loading...",
"loading_indicator.label": "लोड हो रहा है...",
"media_gallery.toggle_visible": "Toggle visibility",
"missing_indicator.label": "Not found",
"missing_indicator.sublabel": "This resource could not be found",
"missing_indicator.label": "नहीं मिला",
"missing_indicator.sublabel": "यह संसाधन नहीं मिल सका।",
"mute_modal.hide_notifications": "Hide notifications from this user?",
"navigation_bar.apps": "Mobile apps",
"navigation_bar.blocks": "Blocked users",
"navigation_bar.community_timeline": "Local timeline",
"navigation_bar.compose": "Compose new toot",
"navigation_bar.apps": "मोबाइल एप्लिकेशंस",
"navigation_bar.blocks": "ब्लॉक्ड यूज़र्स",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "लोकल टाइम्लाइन",
"navigation_bar.compose": "नया टूट् लिखें",
"navigation_bar.direct": "Direct messages",
"navigation_bar.discover": "Discover",
"navigation_bar.domain_blocks": "Hidden domains",
@ -278,63 +288,67 @@
"navigation_bar.security": "Security",
"notification.favourite": "{name} favourited your status",
"notification.follow": "{name} followed you",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} mentioned you",
"notification.own_poll": "Your poll has ended",
"notification.poll": "A poll you have voted in has ended",
"notification.reblog": "{name} boosted your status",
"notifications.clear": "Clear notifications",
"notifications.clear_confirmation": "Are you sure you want to permanently clear all your notifications?",
"notifications.column_settings.alert": "Desktop notifications",
"notifications.column_settings.favourite": "Favourites:",
"notifications.column_settings.filter_bar.advanced": "Display all categories",
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.follow": "New followers:",
"notifications.column_settings.mention": "Mentions:",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.push": "Push notifications",
"notifications.column_settings.reblog": "Boosts:",
"notifications.column_settings.show": "Show in column",
"notifications.column_settings.sound": "Play sound",
"notifications.filter.all": "All",
"notifications.filter.boosts": "Boosts",
"notifications.filter.favourites": "Favourites",
"notifications.filter.follows": "Follows",
"notifications.filter.mentions": "Mentions",
"notifications.filter.polls": "Poll results",
"notifications.group": "{count} notifications",
"poll.closed": "Closed",
"poll.refresh": "Refresh",
"notifications.column_settings.filter_bar.advanced": "सभी श्रेणियाँ दिखाएं",
"notifications.column_settings.filter_bar.category": "फ़िल्टर बार",
"notifications.column_settings.filter_bar.show": "दिखाएँ",
"notifications.column_settings.follow": "नए फ़ॉलोअर्स",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "उल्लेख:",
"notifications.column_settings.poll": "चुनाव परिणाम",
"notifications.column_settings.push": "पुश सूचनाएँ",
"notifications.column_settings.reblog": "बूस्ट:",
"notifications.column_settings.show": "कॉलम में दिखाएँ",
"notifications.column_settings.sound": "ध्वनि चलाएँ",
"notifications.filter.all": "सभी",
"notifications.filter.boosts": "बूस्ट",
"notifications.filter.favourites": "पसंदीदा",
"notifications.filter.follows": "फॉलो",
"notifications.filter.mentions": "उल्लेख",
"notifications.filter.polls": "चुनाव परिणाम",
"notifications.group": "{count} सूचनाएँ",
"poll.closed": "बंद कर दिया",
"poll.refresh": "रीफ्रेश करें",
"poll.total_people": "{count, plural, one {# person} other {# people}}",
"poll.total_votes": "{count, plural, one {# vote} other {# votes}}",
"poll.vote": "Vote",
"poll.voted": "You voted for this answer",
"poll.vote": "वोट",
"poll.voted": "आपने इसी उत्तर का चुनाव किया है।",
"poll_button.add_poll": "Add a poll",
"poll_button.remove_poll": "Remove poll",
"privacy.change": "Adjust status privacy",
"privacy.direct.long": "Post to mentioned users only",
"privacy.direct.short": "Direct",
"privacy.direct.short": "सीधा",
"privacy.private.long": "Post to followers only",
"privacy.private.short": "Followers-only",
"privacy.public.long": "Post to public timelines",
"privacy.public.short": "Public",
"privacy.public.long": "सार्वजनिक टाइम्लाइन पर भेजें",
"privacy.public.short": "सार्वजनिक",
"privacy.unlisted.long": "Do not show in public timelines",
"privacy.unlisted.short": "Unlisted",
"refresh": "Refresh",
"regeneration_indicator.label": "Loading…",
"privacy.unlisted.short": "अनलिस्टेड",
"refresh": "रीफ्रेश करें",
"regeneration_indicator.label": "लोड हो रहा है...",
"regeneration_indicator.sublabel": "Your home feed is being prepared!",
"relative_time.days": "{number}d",
"relative_time.hours": "{number}h",
"relative_time.just_now": "now",
"relative_time.just_now": "अभी",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"reply_indicator.cancel": "Cancel",
"relative_time.today": "today",
"reply_indicator.cancel": "रद्द करें",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
"report.hint": "The report will be sent to your server moderators. You can provide an explanation of why you are reporting this account below:",
"report.placeholder": "Additional comments",
"report.submit": "Submit",
"report.submit": "सबमिट करें",
"report.target": "Report {target}",
"search.placeholder": "Search",
"search.placeholder": "खोजें",
"search_popout.search_format": "Advanced search format",
"search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
"search_popout.tips.hashtag": "hashtag",
@ -349,6 +363,7 @@
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Block @{name}",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "Unboost",
"status.cannot_reblog": "This post cannot be boosted",
"status.copy": "Copy link to status",
@ -369,31 +384,32 @@
"status.pin": "Pin on profile",
"status.pinned": "Pinned toot",
"status.read_more": "Read more",
"status.reblog": "Boost",
"status.reblog": "बूस्ट",
"status.reblog_private": "Boost to original audience",
"status.reblogged_by": "{name} boosted",
"status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.reply": "Reply",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "जवाब",
"status.replyAll": "Reply to thread",
"status.report": "Report @{name}",
"status.sensitive_warning": "Sensitive content",
"status.share": "Share",
"status.show_less": "Show less",
"status.sensitive_warning": "संवेदनशील विषय वस्तु",
"status.share": "शेयर करें",
"status.show_less": "कम दिखाएँ",
"status.show_less_all": "Show less for all",
"status.show_more": "Show more",
"status.show_more": "और दिखाएँ",
"status.show_more_all": "Show more for all",
"status.show_thread": "Show thread",
"status.uncached_media_warning": "Not available",
"status.uncached_media_warning": "अनुपलब्ध",
"status.unmute_conversation": "Unmute conversation",
"status.unpin": "Unpin from profile",
"suggestions.dismiss": "Dismiss suggestion",
"suggestions.header": "You might be interested in…",
"tabs_bar.federated_timeline": "Federated",
"tabs_bar.home": "Home",
"tabs_bar.local_timeline": "Local",
"tabs_bar.notifications": "Notifications",
"tabs_bar.search": "Search",
"tabs_bar.federated_timeline": "फ़ेडरेटेड",
"tabs_bar.home": "होम",
"tabs_bar.local_timeline": "लोकल",
"tabs_bar.notifications": "सूचनाएँ",
"tabs_bar.search": "खोजें",
"time_remaining.days": "{number, plural, one {# day} other {# days}} left",
"time_remaining.hours": "{number, plural, one {# hour} other {# hours}} left",
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
@ -403,21 +419,24 @@
"trends.trending_now": "Trending now",
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
"upload_area.title": "Drag & drop to upload",
"upload_button.label": "Add media (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_button.label": "Add media ({formats})",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Describe for the visually impaired",
"upload_form.edit": "Edit",
"upload_form.undo": "Delete",
"upload_form.edit": "संशोधन करें",
"upload_form.undo": "मिटाए",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.apply": "लागू करें",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
"upload_modal.detect_text": "Detect text from picture",
"upload_modal.edit_media": "Edit media",
"upload_modal.edit_media": "मीडिया में संशोधन करें",
"upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
"upload_modal.preview_label": "Preview ({ratio})",
"upload_progress.label": "Uploading...",
"upload_progress.label": "अपलोडिंग...",
"video.close": "Close video",
"video.download": "फाइल डाउनलोड करें",
"video.exit_fullscreen": "Exit full screen",
"video.expand": "Expand video",
"video.fullscreen": "Full screen",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Add or Remove from lists",
"account.badges.bot": "Bot",
"account.badges.group": "Group",
"account.block": "Blokiraj @{name}",
"account.block_domain": "Sakrij sve sa {domain}",
"account.blocked": "Blocked",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "An unexpected error occurred.",
"alert.unexpected.title": "Oops!",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} per week",
"boost_modal.combo": "Možeš pritisnuti {combo} kako bi ovo preskočio sljedeći put",
"bundle_column_error.body": "Something went wrong while loading this component.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Something went wrong while loading this component.",
"bundle_modal_error.retry": "Try again",
"column.blocks": "Blokirani korisnici",
"column.bookmarks": "Bookmarks",
"column.community": "Lokalni timeline",
"column.direct": "Direct messages",
"column.directory": "Browse profiles",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Toot",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Mark media as sensitive",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "No toots here!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "You haven't blocked any users yet.",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "Lokalni timeline je prazan. Napiši nešto javno kako bi pokrenuo stvari!",
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
"empty_column.domain_blocks": "There are no hidden domains yet.",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Osnovno",
"home.column_settings.show_reblogs": "Pokaži boostove",
"home.column_settings.show_replies": "Pokaži odgovore",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "to open muted users list",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.notifications": "to open notifications column",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "to open pinned toots list",
"keyboard_shortcuts.profile": "to open author's profile",
"keyboard_shortcuts.reply": "to reply",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Hide notifications from this user?",
"navigation_bar.apps": "Mobile apps",
"navigation_bar.blocks": "Blokirani korisnici",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "Lokalni timeline",
"navigation_bar.compose": "Compose new toot",
"navigation_bar.direct": "Direct messages",
@ -278,7 +288,9 @@
"navigation_bar.security": "Security",
"notification.favourite": "{name} je lajkao tvoj status",
"notification.follow": "{name} te sada slijedi",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} te je spomenuo",
"notification.own_poll": "Your poll has ended",
"notification.poll": "A poll you have voted in has ended",
"notification.reblog": "{name} je podigao tvoj status",
"notifications.clear": "Očisti notifikacije",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.follow": "Novi sljedbenici:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "Spominjanja:",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.push": "Push notifications",
@ -327,6 +340,7 @@
"relative_time.just_now": "now",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "today",
"reply_indicator.cancel": "Otkaži",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
@ -349,6 +363,7 @@
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Block @{name}",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "Unboost",
"status.cannot_reblog": "Ovaj post ne može biti boostan",
"status.copy": "Copy link to status",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name} je podigao",
"status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "Odgovori",
"status.replyAll": "Odgovori na temu",
"status.report": "Prijavi @{name}",
@ -406,9 +422,11 @@
"upload_button.label": "Dodaj media",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Describe for the visually impaired",
"upload_form.edit": "Edit",
"upload_form.undo": "Poništi",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Preview ({ratio})",
"upload_progress.label": "Uploadam...",
"video.close": "Close video",
"video.download": "Download file",
"video.exit_fullscreen": "Exit full screen",
"video.expand": "Expand video",
"video.fullscreen": "Full screen",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Hozzáadás és elvétel listáról",
"account.add_or_remove_from_list": "Hozzáadás vagy eltávolítás a listáról",
"account.badges.bot": "Bot",
"account.badges.group": "Csoport",
"account.block": "@{name} letiltása",
"account.block_domain": "Minden elrejtése innen: {domain}",
"account.blocked": "Letiltva",
@ -12,13 +13,13 @@
"account.follow": "Követés",
"account.followers": "Követő",
"account.followers.empty": "Ezt a felhasználót még senki sem követi.",
"account.follows": "Követett",
"account.follows": "Követések",
"account.follows.empty": "Ez a felhasználó még senkit sem követ.",
"account.follows_you": "Követ téged",
"account.hide_reblogs": "@{name} megtolásainak némítása",
"account.last_status": "Utoljára aktív",
"account.link_verified_on": "A linket ellenőriztük: {date}",
"account.locked_info": "Ez a fiók zárt. A tulaj engedélyezi, ki követheti őt.",
"account.locked_info": "Ez a fiók zárt. A tulajdonos engedélyezi, hogy ki követheti őt.",
"account.media": "Média",
"account.mention": "@{name} említése",
"account.moved_to": "{name} átköltözött:",
@ -27,7 +28,7 @@
"account.muted": "Némítva",
"account.never_active": "Soha",
"account.posts": "Tülkölés",
"account.posts_with_replies": "Tülkölés válaszokkal",
"account.posts_with_replies": "Tülkölés és válaszok",
"account.report": "@{name} jelentése",
"account.requested": "Engedélyre vár. Kattints a követési kérés visszavonásához",
"account.share": "@{name} profiljának megosztása",
@ -38,10 +39,11 @@
"account.unfollow": "Követés vége",
"account.unmute": "@{name} némítás feloldása",
"account.unmute_notifications": "@{name} némított értesítéseinek feloldása",
"alert.rate_limited.message": "Kérlek, próbáld újra {retry_time, time, medium}.",
"alert.rate_limited.message": "Próbáld újra {retry_time, time, medium} után.",
"alert.rate_limited.title": "Forgalomkorlátozás",
"alert.unexpected.message": "Váratlan hiba történt.",
"alert.unexpected.title": "Hoppá!",
"announcement.announcement": "Közlemény",
"autosuggest_hashtag.per_week": "{count}/hét",
"boost_modal.combo": "Hogy átugord ezt következő alkalommal, használd {combo}",
"bundle_column_error.body": "Hiba történt a komponens betöltése közben.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Hiba történt a komponens betöltésekor.",
"bundle_modal_error.retry": "Próbáld újra",
"column.blocks": "Letiltott felhasználók",
"column.bookmarks": "Könyvjelzők",
"column.community": "Helyi idővonal",
"column.direct": "Közvetlen üzenetek",
"column.directory": "Profilok böngészése",
@ -73,38 +76,40 @@
"column_subheading.settings": "Beállítások",
"community.column_settings.media_only": "Csak média",
"compose_form.direct_message_warning": "Ezt a tülköt csak a benne megemlített felhasználók láthatják majd.",
"compose_form.direct_message_warning_learn_more": "Több infó",
"compose_form.direct_message_warning_learn_more": "Tudj meg többet",
"compose_form.hashtag_warning": "Ez a tülköd nem fog megjelenni semmilyen hashtag alatt mivel listázatlan. Csak nyilvános tülkök kereshetőek hashtaggel.",
"compose_form.lock_disclaimer": "A fiókod nincs {locked}. Bárki követni tud, hogy megtekintse a kizárólag követőknek szánt üzeneteidet.",
"compose_form.lock_disclaimer.lock": "lezárva",
"compose_form.placeholder": "Mi jár a fejedben?",
"compose_form.poll.add_option": "Lehetőség hozzáadása",
"compose_form.poll.duration": "Szavazás időtartama",
"compose_form.poll.option_placeholder": "Lehetőség {number}",
"compose_form.poll.option_placeholder": "{number}. lehetőség",
"compose_form.poll.remove_option": "Lehetőség törlése",
"compose_form.poll.switch_to_multiple": "Szavazás megváltoztatása több választásosra",
"compose_form.poll.switch_to_single": "Szavazás megváltoztatása egyetlen választásosra",
"compose_form.publish": "Tülk",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Média megjelölése szenzitívként",
"compose_form.sensitive.marked": "A médiát szenzitívnek jelölték",
"compose_form.sensitive.unmarked": "A médiát nem jelölték szenzitívnek",
"compose_form.sensitive.marked": "A médiát érzékenynek jelölték",
"compose_form.sensitive.unmarked": "A médiát nem jelölték érzékenynek",
"compose_form.spoiler.marked": "A szöveg figyelmeztetés mögé van rejtve",
"compose_form.spoiler.unmarked": "A szöveg nem rejtett",
"compose_form.spoiler_placeholder": "Írd ide a figyelmeztetést",
"confirmation_modal.cancel": "Mégse",
"confirmations.block.block_and_report": "Letiltás és Bejelentés",
"confirmations.block.block_and_report": "Letiltás és jelentés",
"confirmations.block.confirm": "Letiltás",
"confirmations.block.message": "Biztos, hogy le szeretnéd tiltani {name}?",
"confirmations.block.message": "Biztos, hogy letiltod: {name}?",
"confirmations.delete.confirm": "Törlés",
"confirmations.delete.message": "Biztos, hogy törölni szeretnéd ezt a tülkölést?",
"confirmations.delete_list.confirm": "Törlés",
"confirmations.delete_list.message": "Biztos, hogy véglegesen törölni szeretnéd ezt a listát?",
"confirmations.domain_block.confirm": "Teljes domain elrejtése",
"confirmations.domain_block.message": "Egészen biztos, hogy le szeretnéd tiltani a teljes {domain}-t? A legtöbb esetben néhány célzott tiltás vagy némítás elegendő és kívánatosabb megoldás. Semmilyen tartalmat nem fogsz látni ebből a domainből se idővonalakon, se értesítésekben. Az ebben a domainben lévő követőidet is eltávolítjuk.",
"confirmations.domain_block.message": "Biztos, hogy le szeretnéd tiltani a teljes {domain} domaint? A legtöbb esetben néhány célzott tiltás vagy némítás elegendő, és kívánatosabb megoldás. Semmilyen tartalmat nem fogsz látni ebből a domainből se az idővonalakon, se az értesítésekben. Az ebben a domainben lévő követőidet is eltávolítjuk.",
"confirmations.logout.confirm": "Kijelentkezés",
"confirmations.logout.message": "Biztosan ki akar jelentkezni?",
"confirmations.logout.message": "Biztos, hogy kijelentkezel?",
"confirmations.mute.confirm": "Némítás",
"confirmations.mute.explanation": "Ez elrejti a tőlük érkező posztokat, valamint az őket megemlítőket, de ők továbbra is láthatják a te posztjaidat és követhetnek is téged.",
"confirmations.mute.message": "Biztos, hogy némítani szeretnéd {name}?",
"confirmations.mute.explanation": "Ez elrejti a tőlük érkező bejegyzéseket, valamint az őket megemlítőket, de ők továbbra is láthatják a te bejegyzéseid, és követhetnek is téged.",
"confirmations.mute.message": "Biztos, hogy némítod: {name}?",
"confirmations.redraft.confirm": "Törlés és újraírás",
"confirmations.redraft.message": "Biztos, hogy ezt a tülköt szeretnéd törölni és újraírni? Minden megtolást és kedvencnek jelölést elvesztesz, az eredetire adott válaszok pedig elárvulnak.",
"confirmations.reply.confirm": "Válasz",
@ -116,7 +121,7 @@
"conversation.open": "Beszélgetés megtekintése",
"conversation.with": "{names}-el/al",
"directory.federated": "Az ismert fediverzumból",
"directory.local": "Csak {domain}-ból/ből",
"directory.local": "Csak innen: {domain}",
"directory.new_arrivals": "Új csatlakozók",
"directory.recently_active": "Nemrég aktív",
"embed.instructions": "Ágyazd be ezt a tülköt a weboldaladba az alábbi kód kimásolásával.",
@ -127,7 +132,7 @@
"emoji_button.food": "Étel és Ital",
"emoji_button.label": "Emoji beszúrása",
"emoji_button.nature": "Természet",
"emoji_button.not_found": "Nincsenek emojik!! (╯°□°)╯︵ ┻━┻",
"emoji_button.not_found": "Nincsenek emodzsik!! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "Tárgyak",
"emoji_button.people": "Emberek",
"emoji_button.recent": "Gyakran használt",
@ -136,8 +141,9 @@
"emoji_button.symbols": "Szimbólumok",
"emoji_button.travel": "Utazás és Helyek",
"empty_column.account_timeline": "Itt nincs tülkölés!",
"empty_column.account_unavailable": "A profil nem elérhető",
"empty_column.account_unavailable": "A profil nem érhető el",
"empty_column.blocks": "Még senkit sem tiltottál le.",
"empty_column.bookmarked_statuses": "Még nincs egyetlen könyvjelzőzött tülköd sem. Ha könyvjelzőzöl egyet, itt fog megjelenni.",
"empty_column.community": "A helyi idővonal üres. Tülkölj egyet nyilvánosan, hogy elindítsd az eseményeket!",
"empty_column.direct": "Még nincs egy közvetlen üzeneted sem. Ha küldesz vagy kapsz egyet, itt fog megjelenni.",
"empty_column.domain_blocks": "Még nem rejtettél el egyetlen domaint sem.",
@ -145,8 +151,8 @@
"empty_column.favourites": "Még senki sem jelölte ezt a tülköt kedvencként. Ha valaki mégis megteszi, itt fogjuk mutatni.",
"empty_column.follow_requests": "Még nincs egy követési kérésed sem. Ha kapsz egyet, itt fogjuk feltüntetni.",
"empty_column.hashtag": "Jelenleg nem található semmi ezzel a hashtaggel.",
"empty_column.home": "A saját idővonalad üres! Látogasd meg a {public} -at vagy használd a keresőt, hogy megismerj másokat.",
"empty_column.home.public_timeline": "nyilvános idővonal",
"empty_column.home": "A saját idővonalad üres! Látogasd meg a {public} oldalt vagy használd a keresőt, hogy megismerj másokat.",
"empty_column.home.public_timeline": "a nyilvános idővonal",
"empty_column.list": "A lista jelenleg üres. Ha a listatagok tülkölnek, itt fognak megjelenni.",
"empty_column.lists": "Még nem hoztál létre listát. Ha csinálsz egyet, itt látszik majd.",
"empty_column.mutes": "Még egy felhasználót sem némítottál le.",
@ -154,45 +160,47 @@
"empty_column.public": "Jelenleg itt nincs semmi! Írj valamit nyilvánosan vagy kövess más szervereken levő felhasználókat, hogy megtöltsd",
"error.unexpected_crash.explanation": "Egy hiba vagy böngésző inkompatibilitás miatt ez az oldal nem jeleníthető meg rendesen.",
"error.unexpected_crash.next_steps": "Próbáld frissíteni az oldalt. Ha ez nem segít, egy másik böngészőn vagy appon keresztül még mindig használhatod a Mastodont.",
"errors.unexpected_crash.copy_stacktrace": "Stacktrace vágólapra másolása",
"errors.unexpected_crash.report_issue": "Probléma bejelentése",
"errors.unexpected_crash.copy_stacktrace": "Veremkiíratás vágólapra másolása",
"errors.unexpected_crash.report_issue": "Probléma jelentése",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
"federation.federated.short": "Federated",
"federation.local_only.long": "Restrict this toot only to my instance",
"federation.local_only.short": "Local-only",
"follow_request.authorize": "Engedélyezés",
"follow_request.reject": "Visszautasítás",
"follow_request.reject": "Elutasítás",
"getting_started.developers": "Fejlesztőknek",
"getting_started.directory": "Profilok",
"getting_started.documentation": "Dokumentáció",
"getting_started.heading": "Első lépések",
"getting_started.invite": "Mások meghívása",
"getting_started.open_source_notice": "A Mastodon nyílt forráskódú szoftver. Csatlakozhatsz a fejlesztéshez vagy jelenthetsz problémákat GitHub-on {github}.",
"getting_started.security": "Biztonság",
"getting_started.open_source_notice": "A Mastodon nyílt forráskódú szoftver. Közreműködhetsz vagy problémákat jelenthetsz a GitHubon: {github}.",
"getting_started.security": "Fiókbeállítások",
"getting_started.terms": "Felhasználási feltételek",
"hashtag.column_header.tag_mode.all": "és {additional}",
"hashtag.column_header.tag_mode.any": "vagy {additional}",
"hashtag.column_header.tag_mode.none": "nélküle {additional}",
"hashtag.column_header.tag_mode.none": "{additional} nélkül",
"hashtag.column_settings.select.no_options_message": "Nincs javaslat",
"hashtag.column_settings.select.placeholder": "Addj meg hashtageket…",
"hashtag.column_settings.tag_mode.all": "Mindegyik",
"hashtag.column_settings.tag_mode.any": "Bármelyik",
"hashtag.column_settings.tag_mode.none": "Egyik sem",
"hashtag.column_settings.tag_toggle": "Új tagek felvétele ehhez az oszlophoz",
"home.column_settings.basic": "Alapértelmezések",
"hashtag.column_settings.tag_toggle": "Új címkék felvétele ehhez az oszlophoz",
"home.column_settings.basic": "Alapvető",
"home.column_settings.show_reblogs": "Megtolások mutatása",
"home.column_settings.show_replies": "Válaszok mutatása",
"home.hide_announcements": "Közlemények elrejtése",
"home.show_announcements": "Közlemények mutatása",
"intervals.full.days": "{number, plural, one {# nap} other {# nap}}",
"intervals.full.hours": "{number, plural, one {# óra} other {# óra}}",
"intervals.full.minutes": "{number, plural, one {# perc} other {# perc}}",
"introduction.federation.action": "Következő",
"introduction.federation.federated.headline": "Föderációs",
"introduction.federation.federated.text": "A fediverzum más szervereiről származó nyilvános tülkök a föderációs idővonalon jelennek meg.",
"introduction.federation.home.headline": "Saját",
"introduction.federation.home.text": "A saját idővonaladon az általad követettek tülkjei jelennek meg. Bárkit követhetsz bármely szerveren.",
"introduction.federation.home.headline": "Kezdőlap",
"introduction.federation.home.text": "A saját idővonaladon az általad követett emberek tülkjei jelennek meg. Bárkit követhetsz, bármelyik kiszolgálón.",
"introduction.federation.local.headline": "Helyi",
"introduction.federation.local.text": "A helyi idővonalon a veled közös szerveren lévő emberek nyilvános tülkjei jelennek meg.",
"introduction.federation.local.text": "A helyi idővonalon a veled közös kiszolgálón lévő emberek nyilvános tülkjei jelennek meg.",
"introduction.interactions.action": "Oktatóanyag befejezése!",
"introduction.interactions.favourite.headline": "Kedvenc",
"introduction.interactions.favourite.text": "A kedvenc funkcióval elrakhatsz későbbre egy tülköt, illetve közölheted a szerzővel, hogy tetszett a megosztása.",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "némított felhasználók listájának megnyitása",
"keyboard_shortcuts.my_profile": "profilod megnyitása",
"keyboard_shortcuts.notifications": "értesítések megnyitása",
"keyboard_shortcuts.open_media": "média megnyitása",
"keyboard_shortcuts.pinned": "kitűzött tülkök listájának megnyitása",
"keyboard_shortcuts.profile": "szerző profiljának megnyitása",
"keyboard_shortcuts.reply": "válasz",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Rejtsük el a felhasználótól származó értesítéseket?",
"navigation_bar.apps": "Mobil appok",
"navigation_bar.blocks": "Letiltott felhasználók",
"navigation_bar.bookmarks": "Könyvjelzők",
"navigation_bar.community_timeline": "Helyi idővonal",
"navigation_bar.compose": "Új tülk írása",
"navigation_bar.direct": "Közvetlen üzenetek",
@ -266,7 +276,7 @@
"navigation_bar.filters": "Némított szavak",
"navigation_bar.follow_requests": "Követési kérelmek",
"navigation_bar.follows_and_followers": "Követettek és követők",
"navigation_bar.info": "Erről a szerverről",
"navigation_bar.info": "Erről a kiszolgálóról",
"navigation_bar.keyboard_shortcuts": "Gyorsbillentyűk",
"navigation_bar.lists": "Listák",
"navigation_bar.logout": "Kijelentkezés",
@ -278,7 +288,9 @@
"navigation_bar.security": "Biztonság",
"notification.favourite": "{name} kedvencnek jelölte egy tülködet",
"notification.follow": "{name} követ téged",
"notification.follow_request": "{name} követni szeretne téged",
"notification.mention": "{name} megemlített",
"notification.own_poll": "A szavazásod véget ért",
"notification.poll": "Egy szavazás, melyben részt vettél, véget ért",
"notification.reblog": "{name} megtolta a tülködet",
"notifications.clear": "Értesítések törlése",
@ -289,7 +301,8 @@
"notifications.column_settings.filter_bar.category": "Gyorskereső mező",
"notifications.column_settings.filter_bar.show": "Mutat",
"notifications.column_settings.follow": "Új követők:",
"notifications.column_settings.mention": "Megemlítéseid:",
"notifications.column_settings.follow_request": "Új követési kérelmek:",
"notifications.column_settings.mention": "Megemlítések:",
"notifications.column_settings.poll": "Szavazás eredménye:",
"notifications.column_settings.push": "Push értesítések",
"notifications.column_settings.reblog": "Megtolások:",
@ -322,23 +335,24 @@
"refresh": "Frissítés",
"regeneration_indicator.label": "Töltődik…",
"regeneration_indicator.sublabel": "A saját idővonalad épp készül!",
"relative_time.days": "{number}nap",
"relative_time.days": "{number}n",
"relative_time.hours": "{number}ó",
"relative_time.just_now": "most",
"relative_time.minutes": "{number}p",
"relative_time.seconds": "{number}mp",
"relative_time.today": "ma",
"reply_indicator.cancel": "Mégsem",
"report.forward": "Továbbítás neki {target}",
"report.forward_hint": "Ez a fiók egy másik szerverről van. Küldjünk oda is egy anonimizált bejelentést?",
"report.forward": "Továbbítás: {target}",
"report.forward_hint": "Ez a fiók egy másik kiszolgálóról van. Oda is elküldöd a jelentés egy anonimizált másolatát?",
"report.hint": "A bejelentést a szervered moderátorainak küldjük el. Megmagyarázhatod, miért jelented az alábbi problémát:",
"report.placeholder": "További megjegyzések",
"report.submit": "Küldés",
"report.target": "{target} jelentése",
"search.placeholder": "Keresés",
"search_popout.search_format": "Haladó keresés",
"search_popout.search_format": "Speciális keresés",
"search_popout.tips.full_text": "Egyszerű szöveg. Illeszkedő, általad írt tülköket, kedvencnek jelöléseket, megtolást, megemlítést, felhasználói nevet, megjelenített nevet, hashtageket ad majd vissza.",
"search_popout.tips.hashtag": "hashtag",
"search_popout.tips.status": "tülk",
"search_popout.tips.status": "állapot",
"search_popout.tips.text": "Egyszerű szöveg. Illeszkedő megjelenített nevet, felhasználói nevet, hashtageket ad majd vissza",
"search_popout.tips.user": "felhasználó",
"search_results.accounts": "Emberek",
@ -349,6 +363,7 @@
"status.admin_account": "Moderáció megnyitása @{name} felhasználóhoz",
"status.admin_status": "Tülk megnyitása moderációra",
"status.block": "@{name} letiltása",
"status.bookmark": "Könyvjelzőzés",
"status.cancel_reblog_private": "Megtolás törlése",
"status.cannot_reblog": "Ez a tülk nem tolható meg",
"status.copy": "Link másolása tülkbe",
@ -374,23 +389,24 @@
"status.reblogged_by": "{name} megtolta",
"status.reblogs.empty": "Senki sem tolta még meg ezt a tülköt. Ha valaki megteszi, itt fog megjelenni.",
"status.redraft": "Törlés és újraírás",
"status.remove_bookmark": "Könyvjelző eltávolítása",
"status.reply": "Válasz",
"status.replyAll": "Válasz a beszélgetésre",
"status.report": "@{name} jelentése",
"status.sensitive_warning": "Szenzitív tartalom",
"status.sensitive_warning": "Érzékeny tartalom",
"status.share": "Megosztás",
"status.show_less": "Kevesebbet",
"status.show_less": "Kevesebb megjelenítése",
"status.show_less_all": "Kevesebbet mindenhol",
"status.show_more": "Többet",
"status.show_more_all": "Többet mindenhol",
"status.show_thread": "Szál mutatása",
"status.uncached_media_warning": "Nem elérhető",
"status.uncached_media_warning": "Nem érhető el",
"status.unmute_conversation": "Beszélgetés némításának kikapcsolása",
"status.unpin": "Kitűzés eltávolítása a profilodról",
"suggestions.dismiss": "Javaslat elvetése",
"suggestions.header": "Esetleg érdekelhet…",
"tabs_bar.federated_timeline": "Föderációs",
"tabs_bar.home": "Saját",
"tabs_bar.home": "Kezdőlap",
"tabs_bar.local_timeline": "Helyi",
"tabs_bar.notifications": "Értesítések",
"tabs_bar.search": "Keresés",
@ -400,17 +416,19 @@
"time_remaining.moments": "Pillanatok vannak hátra",
"time_remaining.seconds": "{number, plural, one {# másodperc} other {# másodperc}} van hátra",
"trends.count_by_accounts": "{count} {rawCount, plural, one {résztvevő} other {résztvevő}} beszélget",
"trends.trending_now": "Most trendi",
"ui.beforeunload": "A piszkozatod el fog veszni, ha elhagyod a Mastodon-t.",
"trends.trending_now": "Most felkapott",
"ui.beforeunload": "A piszkozatod el fog veszni, ha elhagyod a Mastodont.",
"upload_area.title": "Húzd ide a feltöltéshez",
"upload_button.label": "Média hozzáadása (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Túllépted a fájl feltöltési limitet.",
"upload_button.label": "Média hozzáadása ({formats})",
"upload_error.limit": "Túllépted a fájlfeltöltési korlátot.",
"upload_error.poll": "Szavazásnál nem lehet fájlt feltölteni.",
"upload_form.audio_description": "Írja le a hallássérültek számára",
"upload_form.description": "Leírás látáskorlátozottak számára",
"upload_form.edit": "Szerkesztés",
"upload_form.undo": "Mégsem",
"upload_form.video_description": "Írja le a hallás- vagy látássérültek számára",
"upload_modal.analyzing_picture": "Kép elemzése…",
"upload_modal.apply": "Alkalmazás",
"upload_modal.apply": "Alkalmaz",
"upload_modal.description_placeholder": "A gyors, barna róka átugrik a lusta kutya fölött",
"upload_modal.detect_text": "Szöveg felismerése a képről",
"upload_modal.edit_media": "Média szerkesztése",
@ -418,12 +436,13 @@
"upload_modal.preview_label": "Előnézet ({ratio})",
"upload_progress.label": "Feltöltés...",
"video.close": "Videó bezárása",
"video.download": "Fájl letöltése",
"video.exit_fullscreen": "Kilépés teljes képernyőből",
"video.expand": "Videó nagyítása",
"video.fullscreen": "Teljes képernyő",
"video.hide": "Videó elrejtése",
"video.mute": "Hang némitása",
"video.mute": "Hang némítása",
"video.pause": "Szünet",
"video.play": "Lejátszás",
"video.unmute": "Hang némitásának vége"
"video.unmute": "Hang némításának vége"
}

View File

@ -1,32 +1,33 @@
{
"account.add_or_remove_from_list": "Add or Remove from lists",
"account.add_or_remove_from_list": "Աւելացնել կամ հեռացնել ցանկերից",
"account.badges.bot": "Բոտ",
"account.badges.group": "Խումբ",
"account.block": "Արգելափակել @{name}֊ին",
"account.block_domain": "Թաքցնել ամենը հետեւյալ տիրույթից՝ {domain}",
"account.blocked": "Blocked",
"account.cancel_follow_request": "Cancel follow request",
"account.blocked": "Արգելափակուած է",
"account.cancel_follow_request": "չեղարկել հետեւելու հայցը",
"account.direct": "Direct Message @{name}",
"account.domain_blocked": "Domain hidden",
"account.domain_blocked": "Թաքցրած տիրոյթ",
"account.edit_profile": "Խմբագրել անձնական էջը",
"account.endorse": "Feature on profile",
"account.endorse": "Ցուցադրել անձնական էջում",
"account.follow": "Հետեւել",
"account.followers": "Հետեւողներ",
"account.followers.empty": "No one follows this user yet.",
"account.followers.empty": "Այս օգտատիրոջը դեռ ոչ մէկ չի հետեւում։",
"account.follows": "Հետեւում է",
"account.follows.empty": "This user doesn't follow anyone yet.",
"account.follows.empty": "Այս օգտատէրն դեռ ոչ մէկի չի հետեւում։",
"account.follows_you": "Հետեւում է քեզ",
"account.hide_reblogs": "Թաքցնել @{name}֊ի տարածածները",
"account.last_status": "Last active",
"account.link_verified_on": "Ownership of this link was checked on {date}",
"account.locked_info": "This account privacy status is set to locked. The owner manually reviews who can follow them.",
"account.last_status": "Վերջին անգամ ակտիւ էր",
"account.link_verified_on": "Սոյն յղման տիրապետումը ստուգուած է՝ {date}֊ին",
"account.locked_info": "Սոյն հաշուի գաղտնիութեան մակարդակը նշուած է որպէս՝ փակ։ Հաշուի տէրն ընտրում է, թէ ով կարող է հետեւել իրեն։",
"account.media": "Մեդիա",
"account.mention": "Նշել @{name}֊ին",
"account.moved_to": "{name}֊ը տեղափոխվել է՝",
"account.mute": "Լռեցնել @{name}֊ին",
"account.mute_notifications": "Անջատել ծանուցումները @{name}֊ից",
"account.muted": "Muted",
"account.never_active": "Never",
"account.posts": "Գրառումներ",
"account.muted": "Լռեցուած",
"account.never_active": "Երբեք",
"account.posts": "Թութ",
"account.posts_with_replies": "Toots with replies",
"account.report": "Բողոքել @{name}֊ից",
"account.requested": "Հաստատման կարիք ունի։ Սեղմիր՝ հետեւելու հայցը չեղարկելու համար։",
@ -34,15 +35,16 @@
"account.show_reblogs": "Ցուցադրել @{name}֊ի տարածածները",
"account.unblock": "Ապաարգելափակել @{name}֊ին",
"account.unblock_domain": "Ցուցադրել {domain} թաքցված տիրույթի գրառումները",
"account.unendorse": "Don't feature on profile",
"account.unendorse": "Չցուցադրել անձնական էջում",
"account.unfollow": "Չհետեւել",
"account.unmute": "Ապալռեցնել @{name}֊ին",
"account.unmute_notifications": "Միացնել ծանուցումները @{name}֊ից",
"alert.rate_limited.message": "Please retry after {retry_time, time, medium}.",
"alert.rate_limited.message": "Փորձէք որոշ ժամանակ անց՝ {retry_time, time, medium}։",
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "An unexpected error occurred.",
"alert.unexpected.message": "Անսպասելի սխալ տեղի ունեցաւ։",
"alert.unexpected.title": "Վա՜յ",
"autosuggest_hashtag.per_week": "{count} per week",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "շաբաթը՝ {count}",
"boost_modal.combo": "Կարող ես սեղմել {combo}՝ սա հաջորդ անգամ բաց թողնելու համար",
"bundle_column_error.body": "Այս բաղադրիչը բեռնելու ընթացքում ինչ֊որ բան խափանվեց։",
"bundle_column_error.retry": "Կրկին փորձել",
@ -51,10 +53,11 @@
"bundle_modal_error.message": "Այս բաղադրիչը բեռնելու ընթացքում ինչ֊որ բան խափանվեց։",
"bundle_modal_error.retry": "Կրկին փորձել",
"column.blocks": "Արգելափակված օգտատերեր",
"column.bookmarks": "Էջանիշեր",
"column.community": "Տեղական հոսք",
"column.direct": "Direct messages",
"column.directory": "Browse profiles",
"column.domain_blocks": "Hidden domains",
"column.direct": "Հասցէագրուած հաղորդագրութիւններ",
"column.directory": "Զննել անձնական էջերը",
"column.domain_blocks": "Թաքցուած տիրոյթները",
"column.favourites": "Հավանածներ",
"column.follow_requests": "Հետեւելու հայցեր",
"column.home": "Հիմնական",
@ -73,25 +76,27 @@
"column_subheading.settings": "Կարգավորումներ",
"community.column_settings.media_only": "Media only",
"compose_form.direct_message_warning": "This toot will only be visible to all the mentioned users.",
"compose_form.direct_message_warning_learn_more": "Learn more",
"compose_form.direct_message_warning_learn_more": "Իմանալ ավելին",
"compose_form.hashtag_warning": "Այս թութը չի հաշվառվի որեւէ պիտակի տակ, քանզի այն ծածուկ է։ Միայն հրապարակային թթերը հնարավոր է որոնել պիտակներով։",
"compose_form.lock_disclaimer": "Քո հաշիվը {locked} չէ։ Յուրաքանչյուր ոք կարող է հետեւել քեզ եւ տեսնել միայն հետեւողների համար նախատեսված գրառումները։",
"compose_form.lock_disclaimer.lock": "փակ",
"compose_form.placeholder": "Ի՞նչ կա մտքիդ",
"compose_form.poll.add_option": "Add a choice",
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.poll.add_option": "Աւելացնել տարբերակ",
"compose_form.poll.duration": "Հարցման տեւողութիւնը",
"compose_form.poll.option_placeholder": "Տարբերակ {number}",
"compose_form.poll.remove_option": "Հեռացնել այս տարբերակը",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Թթել",
"compose_form.publish_loud": "Թթե՜լ",
"compose_form.sensitive.hide": "Mark media as sensitive",
"compose_form.sensitive.marked": "Media is marked as sensitive",
"compose_form.sensitive.unmarked": "Media is not marked as sensitive",
"compose_form.spoiler.marked": "Text is hidden behind warning",
"compose_form.spoiler.unmarked": "Text is not hidden",
"compose_form.sensitive.hide": "Նշել մեդիան որպէս դիւրազգաց",
"compose_form.sensitive.marked": "Մեդիան նշուած է որպէս դիւրազգաց",
"compose_form.sensitive.unmarked": "Մեդիան նշուած չէ որպէս դիւրազգաց",
"compose_form.spoiler.marked": "Տեքստը թաքցուած է զգուշացման ետեւում",
"compose_form.spoiler.unmarked": "Տեքստը թաքցուած չէ",
"compose_form.spoiler_placeholder": "Գրիր նախազգուշացումդ այստեղ",
"confirmation_modal.cancel": "Չեղարկել",
"confirmations.block.block_and_report": "Block & Report",
"confirmations.block.block_and_report": "Արգելափակել եւ բողոքել",
"confirmations.block.confirm": "Արգելափակել",
"confirmations.block.message": "Վստա՞հ ես, որ ուզում ես արգելափակել {name}֊ին։",
"confirmations.delete.confirm": "Ջնջել",
@ -100,25 +105,25 @@
"confirmations.delete_list.message": "Վստա՞հ ես, որ ուզում ես մշտապես ջնջել այս ցանկը։",
"confirmations.domain_block.confirm": "Թաքցնել ամբողջ տիրույթը",
"confirmations.domain_block.message": "Հաստատ֊հաստա՞տ վստահ ես, որ ուզում ես արգելափակել ամբողջ {domain} տիրույթը։ Սովորաբար մի երկու թիրախավորված արգելափակում կամ լռեցում բավական է ու նախընտրելի։",
"confirmations.logout.confirm": "Log out",
"confirmations.logout.message": "Are you sure you want to log out?",
"confirmations.logout.confirm": "Ելք",
"confirmations.logout.message": "Համոզո՞ւած ես, որ ուզում ես դուրս գալ",
"confirmations.mute.confirm": "Լռեցնել",
"confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.",
"confirmations.mute.explanation": "Սա թաքցնելու ա իրենց գրառումներն, ինչպէս նաեւ իրենց նշող գրառումներն, բայց իրենք միեւնոյն է կը կարողանան հետեւել ձեզ եւ տեսնել ձեր գրառումները։",
"confirmations.mute.message": "Վստա՞հ ես, որ ուզում ես {name}֊ին լռեցնել։",
"confirmations.redraft.confirm": "Delete & redraft",
"confirmations.redraft.confirm": "Ջնջել եւ խմբագրել նորից",
"confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? You will lose all replies, boosts and favourites to it.",
"confirmations.reply.confirm": "Reply",
"confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"confirmations.reply.confirm": "Պատասխանել",
"confirmations.reply.message": "Այս պահին պատասխանելը կը չեղարկի ձեր՝ այս պահին անաւարտ հաղորդագրութիւնը։ Համոզուա՞ծ էք։",
"confirmations.unfollow.confirm": "Ապահետեւել",
"confirmations.unfollow.message": "Վստա՞հ ես, որ ուզում ես այլեւս չհետեւել {name}֊ին։",
"conversation.delete": "Delete conversation",
"conversation.mark_as_read": "Mark as read",
"conversation.open": "View conversation",
"conversation.with": "With {names}",
"directory.federated": "From known fediverse",
"directory.local": "From {domain} only",
"directory.new_arrivals": "New arrivals",
"directory.recently_active": "Recently active",
"conversation.delete": "Ջնջել խօսակցութիւնը",
"conversation.mark_as_read": "Նշել որպէս ընթերցուած",
"conversation.open": "Դիտել խօսակցութիւնը",
"conversation.with": "{names}֊երի հետ",
"directory.federated": "Յայտնի դաշնեզերքից",
"directory.local": "{domain} տիրոյթից միայն",
"directory.new_arrivals": "Նորութիւններ",
"directory.recently_active": "Վերջերս ակտիւ",
"embed.instructions": "Այս թութը քո կայքում ներդնելու համար կարող ես պատճենել ներքոհիշյալ կոդը։",
"embed.preview": "Ահա, թե ինչ տեսք կունենա այն՝",
"emoji_button.activity": "Զբաղմունքներ",
@ -135,27 +140,28 @@
"emoji_button.search_results": "Որոնման արդյունքներ",
"emoji_button.symbols": "Նշաններ",
"emoji_button.travel": "Ուղեւորություն եւ տեղանքներ",
"empty_column.account_timeline": "No toots here!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "You haven't blocked any users yet.",
"empty_column.account_timeline": "Այստեղ թթեր չկա՛ն։",
"empty_column.account_unavailable": "Անձնական էջը հասանելի չի",
"empty_column.blocks": "Դու դեռ ոչ մէկի չես արգելափակել։",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "Տեղական հոսքը դատա՛րկ է։ Հրապարակային մի բան գրիր շարժիչը խոդ տալու համար։",
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
"empty_column.domain_blocks": "There are no hidden domains yet.",
"empty_column.favourited_statuses": "You don't have any favourite toots yet. When you favourite one, it will show up here.",
"empty_column.favourites": "No one has favourited this toot yet. When someone does, they will show up here.",
"empty_column.direct": "Դու դեռ չունես ոչ մի հասցէագրուած հաղորդագրութիւն։ Երբ ուղարկես կամ ստանաս որեւէ անձնական նամակ, այն այստեղ կերեւայ։",
"empty_column.domain_blocks": "Թաքցուած տիրոյթներ դեռ չկան։",
"empty_column.favourited_statuses": "Դու դեռ չունես որեւէ հաւանած թութ։ Երբ հաւանես, դրանք կերեւան այստեղ։",
"empty_column.favourites": "Այս թութը ոչ մէկ դեռ չի հաւանել։ Հաւանողները կերեւան այստեղ, երբ նշեն թութը հաւանած։",
"empty_column.follow_requests": "You don't have any follow requests yet. When you receive one, it will show up here.",
"empty_column.hashtag": "Այս պիտակով դեռ ոչինչ չկա։",
"empty_column.home": "Քո հիմնական հոսքը դատա՛րկ է։ Այցելի՛ր {public}ը կամ օգտվիր որոնումից՝ այլ մարդկանց հանդիպելու համար։",
"empty_column.home.public_timeline": "հրապարակային հոսք",
"empty_column.list": "Այս ցանկում դեռ ոչինչ չկա։ Երբ ցանկի անդամներից որեւէ մեկը նոր թութ գրի, այն կհայտնվի այստեղ։",
"empty_column.lists": "You don't have any lists yet. When you create one, it will show up here.",
"empty_column.mutes": "You haven't muted any users yet.",
"empty_column.mutes": "Առայժմ ոչ ոքի չեք արգելափակել։",
"empty_column.notifications": "Ոչ մի ծանուցում դեռ չունես։ Բզիր մյուսներին՝ խոսակցությունը սկսելու համար։",
"empty_column.public": "Այստեղ բան չկա՛։ Հրապարակային մի բան գրիր կամ հետեւիր այլ հանգույցներից էակների՝ այն լցնելու համար։",
"error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.",
"error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.report_issue": "Report issue",
"errors.unexpected_crash.report_issue": "Զեկուցել խնդրի մասին",
"federation.change": "Adjust status federation",
"federation.federated.long": "Allow toot to reach other instances",
"federation.federated.short": "Federated",
@ -163,48 +169,50 @@
"federation.local_only.short": "Local-only",
"follow_request.authorize": "Վավերացնել",
"follow_request.reject": "Մերժել",
"getting_started.developers": "Developers",
"getting_started.directory": "Profile directory",
"getting_started.documentation": "Documentation",
"getting_started.developers": "Մշակողներ",
"getting_started.directory": "Պրոֆիլի տեղադրավայրը",
"getting_started.documentation": "Փաստաթղթեր",
"getting_started.heading": "Ինչպես սկսել",
"getting_started.invite": "Invite people",
"getting_started.invite": "Հրավիրել մարդկանց",
"getting_started.open_source_notice": "Մաստոդոնը բաց ելատեքստով ծրագրակազմ է։ Կարող ես ներդրում անել կամ վրեպներ զեկուցել ԳիթՀաբում՝ {github}։",
"getting_started.security": "Security",
"getting_started.terms": "Terms of service",
"hashtag.column_header.tag_mode.all": "and {additional}",
"hashtag.column_header.tag_mode.any": "or {additional}",
"hashtag.column_header.tag_mode.none": "without {additional}",
"getting_started.security": "Հաշվի կարգավորումներ",
"getting_started.terms": "Ծառայության պայմանները",
"hashtag.column_header.tag_mode.all": "և {additional}",
"hashtag.column_header.tag_mode.any": "կամ {additional}",
"hashtag.column_header.tag_mode.none": "առանց {additional}",
"hashtag.column_settings.select.no_options_message": "No suggestions found",
"hashtag.column_settings.select.placeholder": "Enter hashtags…",
"hashtag.column_settings.tag_mode.all": "All of these",
"hashtag.column_settings.tag_mode.any": "Any of these",
"hashtag.column_settings.tag_mode.none": "None of these",
"hashtag.column_settings.tag_mode.all": "Բոլորը",
"hashtag.column_settings.tag_mode.any": "Ցանկացածը",
"hashtag.column_settings.tag_mode.none": "Ոչ մեկը",
"hashtag.column_settings.tag_toggle": "Include additional tags in this column",
"home.column_settings.basic": "Հիմնական",
"home.column_settings.show_reblogs": "Ցուցադրել տարածածները",
"home.column_settings.show_replies": "Ցուցադրել պատասխանները",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
"introduction.federation.action": "Next",
"introduction.federation.action": "Հաջորդ",
"introduction.federation.federated.headline": "Federated",
"introduction.federation.federated.text": "Public posts from other servers of the fediverse will appear in the federated timeline.",
"introduction.federation.home.headline": "Home",
"introduction.federation.home.headline": "Հիմնական",
"introduction.federation.home.text": "Posts from people you follow will appear in your home feed. You can follow anyone on any server!",
"introduction.federation.local.headline": "Local",
"introduction.federation.local.headline": "Տեղային",
"introduction.federation.local.text": "Public posts from people on the same server as you will appear in the local timeline.",
"introduction.interactions.action": "Finish toot-orial!",
"introduction.interactions.favourite.headline": "Favourite",
"introduction.interactions.favourite.headline": "Նախընտրելի",
"introduction.interactions.favourite.text": "You can save a toot for later, and let the author know that you liked it, by favouriting it.",
"introduction.interactions.reblog.headline": "Boost",
"introduction.interactions.reblog.headline": "Տարածել",
"introduction.interactions.reblog.text": "You can share other people's toots with your followers by boosting them.",
"introduction.interactions.reply.headline": "Reply",
"introduction.interactions.reply.headline": "Պատասխանել",
"introduction.interactions.reply.text": "You can reply to other people's and your own toots, which will chain them together in a conversation.",
"introduction.welcome.action": "Let's go!",
"introduction.welcome.headline": "First steps",
"introduction.welcome.action": "Գնացի՜նք։",
"introduction.welcome.headline": "Առաջին քայլեր",
"introduction.welcome.text": "Welcome to the fediverse! In a few moments, you'll be able to broadcast messages and talk to your friends across a wide variety of servers. But this server, {domain}, is special—it hosts your profile, so remember its name.",
"keyboard_shortcuts.back": "ետ նավարկելու համար",
"keyboard_shortcuts.blocked": "to open blocked users list",
"keyboard_shortcuts.blocked": "արգելափակված օգտատերերի ցանկը բացելու համար",
"keyboard_shortcuts.boost": "տարածելու համար",
"keyboard_shortcuts.column": "սյուներից մեկի վրա սեւեռվելու համար",
"keyboard_shortcuts.compose": "շարադրման տիրույթին սեւեռվելու համար",
@ -224,26 +232,27 @@
"keyboard_shortcuts.muted": "to open muted users list",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.notifications": "to open notifications column",
"keyboard_shortcuts.pinned": "to open pinned toots list",
"keyboard_shortcuts.profile": "to open author's profile",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "ամրացուած թթերի ցանկը բացելու համար",
"keyboard_shortcuts.profile": "հեղինակի անձնական էջը բացելու համար",
"keyboard_shortcuts.reply": "պատասխանելու համար",
"keyboard_shortcuts.requests": "to open follow requests list",
"keyboard_shortcuts.requests": "հետեւելու հայցերի ցանկը դիտելու համար",
"keyboard_shortcuts.search": "որոնման դաշտին սեւեռվելու համար",
"keyboard_shortcuts.start": "to open \"get started\" column",
"keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW",
"keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
"keyboard_shortcuts.start": "«սկսել» սիւնակը բացելու համար",
"keyboard_shortcuts.toggle_hidden": "CW֊ի ետեւի տեքստը ցուցադրել֊թաքցնելու համար",
"keyboard_shortcuts.toggle_sensitivity": "մեդիան ցուցադրել֊թաքցնելու համար",
"keyboard_shortcuts.toot": "թարմ թութ սկսելու համար",
"keyboard_shortcuts.unfocus": "տեքստի/որոնման տիրույթից ապասեւեռվելու համար",
"keyboard_shortcuts.up": "ցանկով վերեւ շարժվելու համար",
"lightbox.close": "Փակել",
"lightbox.next": "Հաջորդ",
"lightbox.previous": "Նախորդ",
"lightbox.view_context": "View context",
"lightbox.view_context": "Տեսնել ենթատեքստը",
"lists.account.add": "Ավելացնել ցանկին",
"lists.account.remove": "Հանել ցանկից",
"lists.delete": "Ջնջել ցանկը",
"lists.edit": "Փոփոխել ցանկը",
"lists.edit.submit": "Change title",
"lists.edit.submit": "Փոխել վերնագիրը",
"lists.new.create": "Ավելացնել ցանկ",
"lists.new.title_placeholder": "Նոր ցանկի վերնագիր",
"lists.search": "Փնտրել քո հետեւած մարդկանց մեջ",
@ -252,20 +261,21 @@
"loading_indicator.label": "Բեռնվում է…",
"media_gallery.toggle_visible": "Ցուցադրել/թաքցնել",
"missing_indicator.label": "Չգտնվեց",
"missing_indicator.sublabel": "This resource could not be found",
"missing_indicator.sublabel": "Պաշարը չի գտնւում",
"mute_modal.hide_notifications": "Թաքցնե՞լ ցանուցումներն այս օգտատիրոջից։",
"navigation_bar.apps": "Mobile apps",
"navigation_bar.apps": "Դիւրակիր յաւելուածներ",
"navigation_bar.blocks": "Արգելափակված օգտատերեր",
"navigation_bar.bookmarks": "Էջանիշեր",
"navigation_bar.community_timeline": "Տեղական հոսք",
"navigation_bar.compose": "Compose new toot",
"navigation_bar.direct": "Direct messages",
"navigation_bar.discover": "Discover",
"navigation_bar.domain_blocks": "Hidden domains",
"navigation_bar.compose": "Գրել նոր թութ",
"navigation_bar.direct": "Հասցէագրուած",
"navigation_bar.discover": "Բացայայտել",
"navigation_bar.domain_blocks": "Թաքցուած տիրոյթներ",
"navigation_bar.edit_profile": "Խմբագրել անձնական էջը",
"navigation_bar.favourites": "Հավանածներ",
"navigation_bar.filters": "Muted words",
"navigation_bar.filters": "Լռեցուած բառեր",
"navigation_bar.follow_requests": "Հետեւելու հայցեր",
"navigation_bar.follows_and_followers": "Follows and followers",
"navigation_bar.follows_and_followers": "Հետեւածներ եւ հետեւողներ",
"navigation_bar.info": "Այս հանգույցի մասին",
"navigation_bar.keyboard_shortcuts": "Ստեղնաշարի կարճատներ",
"navigation_bar.lists": "Ցանկեր",
@ -278,38 +288,41 @@
"navigation_bar.security": "Անվտանգություն",
"notification.favourite": "{name} հավանեց թութդ",
"notification.follow": "{name} սկսեց հետեւել քեզ",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} նշեց քեզ",
"notification.poll": "A poll you have voted in has ended",
"notification.own_poll": "Հարցումդ աւարտուեց",
"notification.poll": "Հարցումը, ուր դու քուէարկել ես, աւարտուեց։",
"notification.reblog": "{name} տարածեց թութդ",
"notifications.clear": "Մաքրել ծանուցումները",
"notifications.clear_confirmation": "Վստա՞հ ես, որ ուզում ես մշտապես մաքրել քո բոլոր ծանուցումները։",
"notifications.column_settings.alert": "Աշխատատիրույթի ծանուցումներ",
"notifications.column_settings.favourite": "Հավանածներից՝",
"notifications.column_settings.filter_bar.advanced": "Display all categories",
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.filter_bar.advanced": "Ցուցադրել բոլոր կատեգորիաները",
"notifications.column_settings.filter_bar.category": "Արագ զտման վահանակ",
"notifications.column_settings.filter_bar.show": "Ցուցադրել",
"notifications.column_settings.follow": "Նոր հետեւողներ՝",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "Նշումներ՝",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.poll": "Հարցման արդիւնքները՝",
"notifications.column_settings.push": "Հրելու ծանուցումներ",
"notifications.column_settings.reblog": "Տարածածներից՝",
"notifications.column_settings.show": "Ցուցադրել սյունում",
"notifications.column_settings.sound": "Ձայն հանել",
"notifications.filter.all": "All",
"notifications.filter.boosts": "Boosts",
"notifications.filter.favourites": "Favourites",
"notifications.filter.follows": "Follows",
"notifications.filter.mentions": "Mentions",
"notifications.filter.polls": "Poll results",
"notifications.group": "{count} notifications",
"poll.closed": "Closed",
"poll.refresh": "Refresh",
"notifications.filter.all": "Բոլորը",
"notifications.filter.boosts": "Տարածածները",
"notifications.filter.favourites": "Հաւանածները",
"notifications.filter.follows": "Հետեւածները",
"notifications.filter.mentions": "Նշումները",
"notifications.filter.polls": "Հարցման արդիւնքները",
"notifications.group": "{count} ծանուցում",
"poll.closed": "Փակ",
"poll.refresh": "Թարմացնել",
"poll.total_people": "{count, plural, one {# person} other {# people}}",
"poll.total_votes": "{count, plural, one {# vote} other {# votes}}",
"poll.vote": "Vote",
"poll.voted": "You voted for this answer",
"poll_button.add_poll": "Add a poll",
"poll_button.remove_poll": "Remove poll",
"poll.vote": "Քուէարկել",
"poll.voted": "Դու քուէարկել ես այս տարբերակի համար",
"poll_button.add_poll": "Աւելացնել հարցում",
"poll_button.remove_poll": "Հեռացնել հարցումը",
"privacy.change": "Կարգավորել թթի գաղտնիությունը",
"privacy.direct.long": "Թթել միայն նշված օգտատերերի համար",
"privacy.direct.short": "Հասցեագրված",
@ -319,37 +332,39 @@
"privacy.public.short": "Հրապարակային",
"privacy.unlisted.long": "Չթթել հրապարակային հոսքերում",
"privacy.unlisted.short": "Ծածուկ",
"refresh": "Refresh",
"regeneration_indicator.label": "Loading…",
"regeneration_indicator.sublabel": "Your home feed is being prepared!",
"refresh": "Թարմացնել",
"regeneration_indicator.label": "Բեռնւում է…",
"regeneration_indicator.sublabel": "պատրաստւում է հիմնական հոսքդ",
"relative_time.days": "{number}օր",
"relative_time.hours": "{number}ժ",
"relative_time.just_now": "նոր",
"relative_time.minutes": "{number}ր",
"relative_time.seconds": "{number}վ",
"relative_time.today": "today",
"reply_indicator.cancel": "Չեղարկել",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
"report.forward": "Փոխանցել {target}֊ին",
"report.forward_hint": "Այս հաշիւ այլ հանգոյցից է։ Ուղարկե՞մ այնտեղ էլ այս բողոքի անոնիմ պատճէնը։",
"report.hint": "The report will be sent to your instance moderators. You can provide an explanation of why you are reporting this account below:",
"report.placeholder": "Լրացուցիչ մեկնաբանություններ",
"report.submit": "Ուղարկել",
"report.target": "Բողոքել {target}֊ի մասին",
"search.placeholder": "Փնտրել",
"search_popout.search_format": "Փնտրելու առաջադեմ ձեւ",
"search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
"search_popout.tips.full_text": "Պարզ տեքստը վերադարձնում է գրառումներդ, հաւանածներդ, տարածածներդ, որտեղ ես նշուած եղել, ինչպէս նաեւ նման օգտանուններ, անուններ եւ պիտակներ։",
"search_popout.tips.hashtag": "պիտակ",
"search_popout.tips.status": "թութ",
"search_popout.tips.text": "Հասարակ տեքստը կվերադարձնի համընկնող անուններ, օգտանուններ ու պիտակներ",
"search_popout.tips.user": "օգտատեր",
"search_results.accounts": "Մարդիկ",
"search_results.hashtags": "Hashtags",
"search_results.statuses": "Toots",
"search_results.statuses_fts_disabled": "Searching toots by their content is not enabled on this Mastodon server.",
"search_results.hashtags": "Պիտակներ",
"search_results.statuses": "Թթեր",
"search_results.statuses_fts_disabled": "Այս հանգոյցում միացուած չէ ըստ բովանդակութեան թթեր փնտրելու հնարաւորութիւնը։",
"search_results.total": "{count, number} {count, plural, one {արդյունք} other {արդյունք}}",
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.admin_account": "Բացել @{name} օգտատիրոջ մոդերացիայի դիմերէսը։",
"status.admin_status": "Բացել այս գրառումը մոդերատորի դիմերէսի մէջ",
"status.block": "Արգելափակել @{name}֊ին",
"status.cancel_reblog_private": "Unboost",
"status.bookmark": "Էջանիշ",
"status.cancel_reblog_private": "Ապատարածել",
"status.cannot_reblog": "Այս թութը չի կարող տարածվել",
"status.copy": "Copy link to status",
"status.delete": "Ջնջել",
@ -357,7 +372,7 @@
"status.direct": "Direct message @{name}",
"status.embed": "Ներդնել",
"status.favourite": "Հավանել",
"status.filtered": "Filtered",
"status.filtered": "Զտված",
"status.load_more": "Բեռնել ավելին",
"status.local_only": "This post is only visible by other users of your instance",
"status.media_hidden": "մեդիաբովանդակությունը թաքցված է",
@ -368,12 +383,13 @@
"status.open": "Ընդարձակել այս թութը",
"status.pin": "Ամրացնել անձնական էջում",
"status.pinned": "Pinned toot",
"status.read_more": "Read more",
"status.read_more": "Կարդալ ավելին",
"status.reblog": "Տարածել",
"status.reblog_private": "Boost to original audience",
"status.reblogged_by": "{name} տարածել է",
"status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "Պատասխանել",
"status.replyAll": "Պատասխանել թելին",
"status.report": "Բողոքել @{name}֊ից",
@ -384,7 +400,7 @@
"status.show_more": "Ավելին",
"status.show_more_all": "Show more for all",
"status.show_thread": "Show thread",
"status.uncached_media_warning": "Not available",
"status.uncached_media_warning": "Անհասանելի",
"status.unmute_conversation": "Ապալռեցնել խոսակցությունը",
"status.unpin": "Հանել անձնական էջից",
"suggestions.dismiss": "Dismiss suggestion",
@ -395,29 +411,32 @@
"tabs_bar.notifications": "Ծանուցումներ",
"tabs_bar.search": "Փնտրել",
"time_remaining.days": "{number, plural, one {# day} other {# days}} left",
"time_remaining.hours": "{number, plural, one {# hour} other {# hours}} left",
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
"time_remaining.hours": "{number, plural, one {# ժամ} other {# ժամ}} անց",
"time_remaining.minutes": "{number, plural, one {# րոպե} other {# րոպե}} անց",
"time_remaining.moments": "Moments remaining",
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
"time_remaining.seconds": "{number, plural, one {# վայրկյան} other {# վայրկյան}} անց",
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
"trends.trending_now": "Trending now",
"trends.trending_now": "Այժմ արդիական",
"ui.beforeunload": "Քո սեւագիրը կկորի, եթե լքես Մաստոդոնը։",
"upload_area.title": "Քաշիր ու նետիր՝ վերբեռնելու համար",
"upload_button.label": "Ավելացնել մեդիա",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.limit": "Ֆայլի վերբեռնման սահմանաչափը գերազանցված է։",
"upload_error.poll": "File upload not allowed with polls.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Նկարագրություն ավելացրու տեսողական խնդիրներ ունեցողների համար",
"upload_form.edit": "Edit",
"upload_form.edit": "Խմբագրել",
"upload_form.undo": "Հետարկել",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
"upload_modal.detect_text": "Detect text from picture",
"upload_modal.edit_media": "Edit media",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Լուսանկարի վերլուծում…",
"upload_modal.apply": "Կիրառել",
"upload_modal.description_placeholder": "Ճկուն շագանակագույն աղվեսը ցատկում է ծույլ շան վրայով",
"upload_modal.detect_text": "Հայտնբերել տեքստը նկարից",
"upload_modal.edit_media": "Խմբագրել մեդիան",
"upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
"upload_modal.preview_label": "Preview ({ratio})",
"upload_modal.preview_label": "Նախադիտում ({ratio})",
"upload_progress.label": "Վերբեռնվում է…",
"video.close": "Փակել տեսագրությունը",
"video.download": "Ներբեռնել ֆայլը",
"video.exit_fullscreen": "Անջատել լիաէկրան դիտումը",
"video.expand": "Ընդարձակել տեսագրությունը",
"video.fullscreen": "Լիաէկրան",

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Tambah atau Hapus dari daftar",
"account.badges.bot": "Bot",
"account.badges.group": "Grup",
"account.block": "Blokir @{name}",
"account.block_domain": "Sembunyikan segalanya dari {domain}",
"account.blocked": "Terblokir",
@ -39,9 +40,10 @@
"account.unmute": "Berhenti membisukan @{name}",
"account.unmute_notifications": "Munculkan notifikasi dari @{name}",
"alert.rate_limited.message": "Tolong ulangi setelah {retry_time, time, medium}.",
"alert.rate_limited.title": "Rate limited",
"alert.rate_limited.title": "Batasan tingkat",
"alert.unexpected.message": "Terjadi kesalahan yang tidak terduga.",
"alert.unexpected.title": "Oops!",
"announcement.announcement": "Pengumuman",
"autosuggest_hashtag.per_week": "{count} per minggu",
"boost_modal.combo": "Anda dapat menekan {combo} untuk melewati ini",
"bundle_column_error.body": "Kesalahan terjadi saat memuat komponen ini.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Kesalahan terjadi saat memuat komponen ini.",
"bundle_modal_error.retry": "Coba lagi",
"column.blocks": "Pengguna diblokir",
"column.bookmarks": "Markah",
"column.community": "Linimasa Lokal",
"column.direct": "Pesan langsung",
"column.directory": "Jelajahi profil",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Durasi jajak pendapat",
"compose_form.poll.option_placeholder": "Pilihan {number}",
"compose_form.poll.remove_option": "Hapus opsi ini",
"compose_form.poll.switch_to_multiple": "Ubah japat menjadi pilihan ganda",
"compose_form.poll.switch_to_single": "Ubah japat menjadi pilihan tunggal",
"compose_form.publish": "Toot",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Tandai sebagai media sensitif",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "Tidak ada toot di sini!",
"empty_column.account_unavailable": "Profil tidak tersedia",
"empty_column.blocks": "Anda belum memblokir siapapun.",
"empty_column.bookmarked_statuses": "Anda belum memiliki toot termarkah. Saat Anda menandainya sebagai markah, ia akan muncul di sini.",
"empty_column.community": "Linimasa lokal masih kosong. Tulis sesuatu secara publik dan buat roda berputar!",
"empty_column.direct": "Anda belum memiliki pesan langsung. Ketika Anda mengirim atau menerimanya, maka akan muncul di sini.",
"empty_column.domain_blocks": "Tidak ada topik tersembunyi.",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Dasar",
"home.column_settings.show_reblogs": "Tampilkan boost",
"home.column_settings.show_replies": "Tampilkan balasan",
"home.hide_announcements": "Sembunyikan pengumuman",
"home.show_announcements": "Tampilkan pengumuman",
"intervals.full.days": "{number, plural, other {# hari}}",
"intervals.full.hours": "{number, plural, other {# jam}}",
"intervals.full.minutes": "{number, plural, other {# menit}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "buka daftar pengguna terbisukan",
"keyboard_shortcuts.my_profile": "buka profil Anda",
"keyboard_shortcuts.notifications": "buka kolom notifikasi",
"keyboard_shortcuts.open_media": "membuka media",
"keyboard_shortcuts.pinned": "buka daftar toot tersemat",
"keyboard_shortcuts.profile": "buka profil pencipta",
"keyboard_shortcuts.reply": "balas",
@ -233,8 +242,8 @@
"keyboard_shortcuts.toggle_hidden": "tampilkan/sembunyikan teks di belakang CW",
"keyboard_shortcuts.toggle_sensitivity": "tampilkan/sembunyikan media",
"keyboard_shortcuts.toot": "mulai toot baru",
"keyboard_shortcuts.unfocus": "to un-focus compose textarea/search",
"keyboard_shortcuts.up": "to move up in the list",
"keyboard_shortcuts.unfocus": "untuk tidak fokus pada area teks/pencarian",
"keyboard_shortcuts.up": "untuk memindah ke atas pada daftar",
"lightbox.close": "Tutup",
"lightbox.next": "Selanjutnya",
"lightbox.previous": "Sebelumnya",
@ -248,7 +257,7 @@
"lists.new.title_placeholder": "Judul daftar baru",
"lists.search": "Cari di antara orang yang Anda ikuti",
"lists.subheading": "Daftar Anda",
"load_pending": "{count, plural, one {# new item} other {# new items}}",
"load_pending": "{count, plural, other {# item baru}}",
"loading_indicator.label": "Tunggu sebentar...",
"media_gallery.toggle_visible": "Tampil/Sembunyikan",
"missing_indicator.label": "Tidak ditemukan",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Sembunyikan notifikasi dari pengguna ini?",
"navigation_bar.apps": "Aplikasi mobile",
"navigation_bar.blocks": "Pengguna diblokir",
"navigation_bar.bookmarks": "Markah",
"navigation_bar.community_timeline": "Linimasa lokal",
"navigation_bar.compose": "Tulis toot baru",
"navigation_bar.direct": "Pesan langsung",
@ -265,7 +275,7 @@
"navigation_bar.favourites": "Favorit",
"navigation_bar.filters": "Kata yang dibisukan",
"navigation_bar.follow_requests": "Permintaan mengikuti",
"navigation_bar.follows_and_followers": "Follows and followers",
"navigation_bar.follows_and_followers": "Ikuti dan pengikut",
"navigation_bar.info": "Informasi selengkapnya",
"navigation_bar.keyboard_shortcuts": "Keyboard shortcuts",
"navigation_bar.lists": "Daftar",
@ -278,7 +288,9 @@
"navigation_bar.security": "Keamanan",
"notification.favourite": "{name} menyukai status anda",
"notification.follow": "{name} mengikuti anda",
"notification.follow_request": "{name} ingin mengikuti Anda",
"notification.mention": "{name} menyebut Anda",
"notification.own_poll": "Japat Anda telah berakhir",
"notification.poll": "Japat yang Anda ikuti telah berakhir",
"notification.reblog": "{name} mem-boost status anda",
"notifications.clear": "Hapus notifikasi",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Bilah penyaring cepat",
"notifications.column_settings.filter_bar.show": "Tampilkan",
"notifications.column_settings.follow": "Pengikut baru:",
"notifications.column_settings.follow_request": "Permintaan mengikuti baru:",
"notifications.column_settings.mention": "Balasan:",
"notifications.column_settings.poll": "Hasil japat:",
"notifications.column_settings.push": "Notifikasi dorong",
@ -304,12 +317,12 @@
"notifications.group": "{count} notifikasi",
"poll.closed": "Ditutup",
"poll.refresh": "Segarkan",
"poll.total_people": "{count, plural, one {# person} other {# people}}",
"poll.total_votes": "{count, plural, one {# vote} other {# votes}}",
"poll.vote": "Vote",
"poll.voted": "You voted for this answer",
"poll_button.add_poll": "Add a poll",
"poll_button.remove_poll": "Remove poll",
"poll.total_people": "{count, plural, other {# orang}}",
"poll.total_votes": "{count, plural, other {# suara}}",
"poll.vote": "Memilih",
"poll.voted": "Anda memilih jawaban ini",
"poll_button.add_poll": "Tambah japat",
"poll_button.remove_poll": "Hapus japat",
"privacy.change": "Tentukan privasi status",
"privacy.direct.long": "Kirim hanya ke pengguna yang disebut",
"privacy.direct.short": "Langsung",
@ -319,111 +332,117 @@
"privacy.public.short": "Publik",
"privacy.unlisted.long": "Tidak ditampilkan di linimasa publik",
"privacy.unlisted.short": "Tak Terdaftar",
"refresh": "Refresh",
"regeneration_indicator.label": "Loading…",
"refresh": "Segarkan",
"regeneration_indicator.label": "Memuat…",
"regeneration_indicator.sublabel": "Linimasa anda sedang disiapkan!",
"relative_time.days": "{number}d",
"relative_time.hours": "{number}h",
"relative_time.just_now": "now",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.days": "{number}h",
"relative_time.hours": "{number}j",
"relative_time.just_now": "sekarang",
"relative_time.minutes": "{number}b",
"relative_time.seconds": "{number}d",
"relative_time.today": "hari ini",
"reply_indicator.cancel": "Batal",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
"report.forward": "Teruskan ke {target}",
"report.forward_hint": "Akun dari server lain. Kirim salinan laporan scr anonim ke sana?",
"report.hint": "The report will be sent to your instance moderators. You can provide an explanation of why you are reporting this account below:",
"report.placeholder": "Komentar tambahan",
"report.submit": "Kirim",
"report.target": "Melaporkan",
"search.placeholder": "Pencarian",
"search_popout.search_format": "Advanced search format",
"search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.",
"search_popout.search_format": "Format pencarian mahir",
"search_popout.tips.full_text": "Teks simpel menampilkan status yang Anda tulis, favoritkan, boost-kan, atau status yang menyebut Anda, serta nama pengguna, nama yang ditampilkan, dan tagar yang cocok.",
"search_popout.tips.hashtag": "tagar",
"search_popout.tips.status": "status",
"search_popout.tips.text": "Simple text returns matching display names, usernames and hashtags",
"search_popout.tips.user": "user",
"search_results.accounts": "People",
"search_results.hashtags": "Hashtags",
"search_results.statuses": "Toots",
"search_results.statuses_fts_disabled": "Searching toots by their content is not enabled on this Mastodon server.",
"search_popout.tips.text": "Teks sederhana menampilkan nama yang ditampilkan, nama pengguna, dan tagar yang cocok",
"search_popout.tips.user": "pengguna",
"search_results.accounts": "Orang",
"search_results.hashtags": "Tagar",
"search_results.statuses": "Toot",
"search_results.statuses_fts_disabled": "Pencarian toot berdasarkan konten tidak diaktifkan di server Mastadon ini.",
"search_results.total": "{count, number} {count, plural, one {hasil} other {hasil}}",
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Block @{name}",
"status.cancel_reblog_private": "Unboost",
"status.cannot_reblog": "This post cannot be boosted",
"status.copy": "Copy link to status",
"status.admin_account": "Buka antar muka moderasi untuk @{name}",
"status.admin_status": "Buka status ini dalam antar muka moderasi",
"status.block": "Blokir @{name}",
"status.bookmark": "Markah",
"status.cancel_reblog_private": "Batalkan boost",
"status.cannot_reblog": "Pos ini tak dapat di-boost",
"status.copy": "Salin tautan ke status",
"status.delete": "Hapus",
"status.detailed_status": "Detailed conversation view",
"status.direct": "Direct message @{name}",
"status.embed": "Embed",
"status.detailed_status": "Tampilan detail percakapan",
"status.direct": "Pesan langsung @{name}",
"status.embed": "Tanam",
"status.favourite": "Difavoritkan",
"status.filtered": "Filtered",
"status.filtered": "Disaring",
"status.load_more": "Tampilkan semua",
"status.local_only": "This post is only visible by other users of your instance",
"status.media_hidden": "Media disembunyikan",
"status.mention": "Balasan @{name}",
"status.more": "More",
"status.mute": "Mute @{name}",
"status.mute_conversation": "Mute conversation",
"status.more": "Lebih banyak",
"status.mute": "Bisukan @{name}",
"status.mute_conversation": "Bisukan percakapan",
"status.open": "Tampilkan status ini",
"status.pin": "Pin on profile",
"status.pinned": "Pinned toot",
"status.read_more": "Read more",
"status.pin": "Sematkan pada profil",
"status.pinned": "Toot tersemat",
"status.read_more": "Baca lebih banyak",
"status.reblog": "Boost",
"status.reblog_private": "Boost to original audience",
"status.reblog_private": "Boost ke audiens asli",
"status.reblogged_by": "di-boost {name}",
"status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.reblogs.empty": "Belum ada yang mem-boost toot ini. Ketika seseorang melakukannya, maka akan muncul di sini.",
"status.redraft": "Hapus & redraf",
"status.remove_bookmark": "Hapus markah",
"status.reply": "Balas",
"status.replyAll": "Balas ke semua",
"status.report": "Laporkan @{name}",
"status.sensitive_warning": "Konten sensitif",
"status.share": "Share",
"status.share": "Bagikan",
"status.show_less": "Tampilkan lebih sedikit",
"status.show_less_all": "Show less for all",
"status.show_less_all": "Tampilkan lebih sedikit",
"status.show_more": "Tampilkan semua",
"status.show_more_all": "Show more for all",
"status.show_thread": "Show thread",
"status.uncached_media_warning": "Not available",
"status.unmute_conversation": "Unmute conversation",
"status.unpin": "Unpin from profile",
"suggestions.dismiss": "Dismiss suggestion",
"suggestions.header": "You might be interested in…",
"status.show_more_all": "Tampilkan lebih banyak",
"status.show_thread": "Tampilkan utas",
"status.uncached_media_warning": "Tak tersedia",
"status.unmute_conversation": "Bunyikan percakapan",
"status.unpin": "Hapus sematan dari profil",
"suggestions.dismiss": "Hentikan saran",
"suggestions.header": "Anda mungkin tertarik dg…",
"tabs_bar.federated_timeline": "Gabungan",
"tabs_bar.home": "Beranda",
"tabs_bar.local_timeline": "Lokal",
"tabs_bar.notifications": "Notifikasi",
"tabs_bar.search": "Search",
"time_remaining.days": "{number, plural, one {# day} other {# days}} left",
"time_remaining.hours": "{number, plural, one {# hour} other {# hours}} left",
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
"time_remaining.moments": "Moments remaining",
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
"trends.trending_now": "Trending now",
"tabs_bar.search": "Cari",
"time_remaining.days": "{number, plural, other {# hari}} tersisa",
"time_remaining.hours": "{number, plural, other {# jam}} tersisa",
"time_remaining.minutes": "{number, plural, other {# menit}} tersisa",
"time_remaining.moments": "Momen tersisa",
"time_remaining.seconds": "{number, plural, other {# detik}} tersisa",
"trends.count_by_accounts": "{count} {rawCount, plural, other {orang}} berbicara",
"trends.trending_now": "Sedang tren sekarang",
"ui.beforeunload": "Naskah anda akan hilang jika anda keluar dari Mastodon.",
"upload_area.title": "Seret & lepaskan untuk mengunggah",
"upload_button.label": "Tambahkan media",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_error.limit": "Batas unggah berkas terlampaui.",
"upload_error.poll": "Unggah berkas tak diizinkan di japat ini.",
"upload_form.audio_description": "Penjelasan untuk orang dengan gangguan pendengaran",
"upload_form.description": "Deskripsikan untuk mereka yang tidak bisa melihat dengan jelas",
"upload_form.edit": "Edit",
"upload_form.edit": "Sunting",
"upload_form.undo": "Undo",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
"upload_modal.detect_text": "Detect text from picture",
"upload_modal.edit_media": "Edit media",
"upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.",
"upload_modal.preview_label": "Preview ({ratio})",
"upload_form.video_description": "Penjelasan untuk orang dengan gangguan pendengaran atau penglihatan",
"upload_modal.analyzing_picture": "Analisis gambar…",
"upload_modal.apply": "Terapkan",
"upload_modal.description_placeholder": "Muharjo seorang xenofobia universal yang takut pada warga jazirah, contohnya Qatar",
"upload_modal.detect_text": "Deteksi teks pada gambar",
"upload_modal.edit_media": "Sunting media",
"upload_modal.hint": "Klik atau seret lingkaran pada pratinjau untuk memilih titik fokus yang akan ditampilkan pada semua gambar kecil.",
"upload_modal.preview_label": "Pratinjau ({ratio})",
"upload_progress.label": "Mengunggah...",
"video.close": "Close video",
"video.close": "Tutup video",
"video.download": "Unduh berkas",
"video.exit_fullscreen": "Keluar dari layar penuh",
"video.expand": "Perbesar video",
"video.fullscreen": "Full screen",
"video.hide": "Hide video",
"video.mute": "Mute sound",
"video.pause": "Pause",
"video.play": "Play",
"video.unmute": "Unmute sound"
"video.fullscreen": "Layar penuh",
"video.hide": "Sembunyikan video",
"video.mute": "Bisukan suara",
"video.pause": "Jeda",
"video.play": "Putar",
"video.unmute": "Bunyikan suara"
}

View File

@ -1,6 +1,7 @@
{
"account.add_or_remove_from_list": "Add or Remove from lists",
"account.badges.bot": "Bot",
"account.badges.group": "Group",
"account.block": "Blokusar @{name}",
"account.block_domain": "Hide everything from {domain}",
"account.blocked": "Blocked",
@ -42,6 +43,7 @@
"alert.rate_limited.title": "Rate limited",
"alert.unexpected.message": "An unexpected error occurred.",
"alert.unexpected.title": "Oops!",
"announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} per week",
"boost_modal.combo": "Tu povas presar sur {combo} por omisar co en la venonta foyo",
"bundle_column_error.body": "Something went wrong while loading this component.",
@ -51,6 +53,7 @@
"bundle_modal_error.message": "Something went wrong while loading this component.",
"bundle_modal_error.retry": "Try again",
"column.blocks": "Blokusita uzeri",
"column.bookmarks": "Bookmarks",
"column.community": "Lokala tempolineo",
"column.direct": "Direct messages",
"column.directory": "Browse profiles",
@ -82,6 +85,8 @@
"compose_form.poll.duration": "Poll duration",
"compose_form.poll.option_placeholder": "Choice {number}",
"compose_form.poll.remove_option": "Remove this choice",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice",
"compose_form.publish": "Siflar",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Mark media as sensitive",
@ -138,6 +143,7 @@
"empty_column.account_timeline": "No toots here!",
"empty_column.account_unavailable": "Profile unavailable",
"empty_column.blocks": "You haven't blocked any users yet.",
"empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
"empty_column.community": "La lokala tempolineo esas vakua. Skribez ulo publike por iniciar la agiveso!",
"empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
"empty_column.domain_blocks": "There are no hidden domains yet.",
@ -183,6 +189,8 @@
"home.column_settings.basic": "Simpla",
"home.column_settings.show_reblogs": "Montrar repeti",
"home.column_settings.show_replies": "Montrar respondi",
"home.hide_announcements": "Hide announcements",
"home.show_announcements": "Show announcements",
"intervals.full.days": "{number, plural, one {# day} other {# days}}",
"intervals.full.hours": "{number, plural, one {# hour} other {# hours}}",
"intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}",
@ -224,6 +232,7 @@
"keyboard_shortcuts.muted": "to open muted users list",
"keyboard_shortcuts.my_profile": "to open your profile",
"keyboard_shortcuts.notifications": "to open notifications column",
"keyboard_shortcuts.open_media": "to open media",
"keyboard_shortcuts.pinned": "to open pinned toots list",
"keyboard_shortcuts.profile": "to open author's profile",
"keyboard_shortcuts.reply": "to reply",
@ -256,6 +265,7 @@
"mute_modal.hide_notifications": "Hide notifications from this user?",
"navigation_bar.apps": "Mobile apps",
"navigation_bar.blocks": "Blokusita uzeri",
"navigation_bar.bookmarks": "Bookmarks",
"navigation_bar.community_timeline": "Lokala tempolineo",
"navigation_bar.compose": "Compose new toot",
"navigation_bar.direct": "Direct messages",
@ -278,7 +288,9 @@
"navigation_bar.security": "Security",
"notification.favourite": "{name} favorizis tua mesajo",
"notification.follow": "{name} sequeskis tu",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} mencionis tu",
"notification.own_poll": "Your poll has ended",
"notification.poll": "A poll you have voted in has ended",
"notification.reblog": "{name} repetis tua mesajo",
"notifications.clear": "Efacar savigi",
@ -289,6 +301,7 @@
"notifications.column_settings.filter_bar.category": "Quick filter bar",
"notifications.column_settings.filter_bar.show": "Show",
"notifications.column_settings.follow": "Nova sequanti:",
"notifications.column_settings.follow_request": "New follow requests:",
"notifications.column_settings.mention": "Mencioni:",
"notifications.column_settings.poll": "Poll results:",
"notifications.column_settings.push": "Push notifications",
@ -327,6 +340,7 @@
"relative_time.just_now": "now",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "today",
"reply_indicator.cancel": "Nihiligar",
"report.forward": "Forward to {target}",
"report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?",
@ -349,6 +363,7 @@
"status.admin_account": "Open moderation interface for @{name}",
"status.admin_status": "Open this status in the moderation interface",
"status.block": "Block @{name}",
"status.bookmark": "Bookmark",
"status.cancel_reblog_private": "Unboost",
"status.cannot_reblog": "This post cannot be boosted",
"status.copy": "Copy link to status",
@ -374,6 +389,7 @@
"status.reblogged_by": "{name} repetita",
"status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.",
"status.redraft": "Delete & re-draft",
"status.remove_bookmark": "Remove bookmark",
"status.reply": "Respondar",
"status.replyAll": "Respondar a filo",
"status.report": "Denuncar @{name}",
@ -406,9 +422,11 @@
"upload_button.label": "Adjuntar kontenajo",
"upload_error.limit": "File upload limit exceeded.",
"upload_error.poll": "File upload not allowed with polls.",
"upload_form.audio_description": "Describe for people with hearing loss",
"upload_form.description": "Describe for the visually impaired",
"upload_form.edit": "Edit",
"upload_form.undo": "Desfacar",
"upload_form.video_description": "Describe for people with hearing loss or visual impairment",
"upload_modal.analyzing_picture": "Analyzing picture…",
"upload_modal.apply": "Apply",
"upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog",
@ -418,6 +436,7 @@
"upload_modal.preview_label": "Preview ({ratio})",
"upload_progress.label": "Kargante...",
"video.close": "Close video",
"video.download": "Download file",
"video.exit_fullscreen": "Exit full screen",
"video.expand": "Expand video",
"video.fullscreen": "Full screen",

View File

@ -0,0 +1,442 @@
{
"account.add_or_remove_from_list": "Bæta á eða fjarlægja af listum",
"account.badges.bot": "Róbót",
"account.badges.group": "Hópur",
"account.block": "Útiloka @{name}",
"account.block_domain": "Fela allt frá {domain}",
"account.blocked": "Útilokaður",
"account.cancel_follow_request": "Hætta við beiðni um að fylgjast með",
"account.direct": "Bein skilaboð til @{name}",
"account.domain_blocked": "Lén falið",
"account.edit_profile": "Breyta notandasniði",
"account.endorse": "Birta á notandasniði",
"account.follow": "Fylgjast með",
"account.followers": "Fylgjendur",
"account.followers.empty": "Ennþá fylgist enginn með þessum notanda.",
"account.follows": "Fylgist með",
"account.follows.empty": "Þessi notandi fylgist ennþá ekki með neinum.",
"account.follows_you": "Fylgir þér",
"account.hide_reblogs": "Fela endurbirtingar fyrir @{name}",
"account.last_status": "Síðasta virkni",
"account.link_verified_on": "Eignarhald á þessum tengli var athugað þann {date}",
"account.locked_info": "Staða gagnaleyndar á þessum aðgangi er stillt á læsingu. Eigandinn yfirfer handvirkt hverjir geti fylgst með honum.",
"account.media": "Myndskrár",
"account.mention": "Minnast á @{name}",
"account.moved_to": "{name} hefur verið færður til:",
"account.mute": "Þagga niður í @{name}",
"account.mute_notifications": "Þagga tilkynningar frá @{name}",
"account.muted": "Þaggað",
"account.never_active": "Aldrei",
"account.posts": "Tíst",
"account.posts_with_replies": "Tíst og svör",
"account.report": "Kæra @{name}",
"account.requested": "Bíður eftir samþykki. Smelltu til að hætta við beiðni um að fylgjast með",
"account.share": "Deila notandasniði fyrir @{name}",
"account.show_reblogs": "Sýna endurbirtingar frá @{name}",
"account.unblock": "Aflétta útilokun af @{name}",
"account.unblock_domain": "Hætta að fela {domain}",
"account.unendorse": "Ekki birta á notandasniði",
"account.unfollow": "Hætta að fylgja",
"account.unmute": "Hætta að þagga niður í @{name}",
"account.unmute_notifications": "Hætta að þagga tilkynningar frá @{name}",
"alert.rate_limited.message": "Prófaðu aftur eftir {retry_time, time, medium}.",
"alert.rate_limited.title": "Með takmörkum",
"alert.unexpected.message": "Upp kom óvænt villa.",
"alert.unexpected.title": "Úbbs!",
"announcement.announcement": "Auglýsing",
"autosuggest_hashtag.per_week": "{count} á viku",
"boost_modal.combo": "Þú getur ýtt á {combo} til að sleppa þessu næst",
"bundle_column_error.body": "Eitthvað fór úrskeiðis við að hlaða inn þessari einingu.",
"bundle_column_error.retry": "Reyndu aftur",
"bundle_column_error.title": "Villa í netkerfi",
"bundle_modal_error.close": "Loka",
"bundle_modal_error.message": "Eitthvað fór úrskeiðis við að hlaða inn þessari einingu.",
"bundle_modal_error.retry": "Reyndu aftur",
"column.blocks": "Útilokaðir notendur",
"column.bookmarks": "Bókamerki",
"column.community": "Staðvær tímalína",
"column.direct": "Bein skilaboð",
"column.directory": "Skoða notandasnið",
"column.domain_blocks": "Falin lén",
"column.favourites": "Eftirlæti",
"column.follow_requests": "Fylgja beiðnum",
"column.home": "Heim",
"column.lists": "Listar",
"column.mutes": "Þaggaðir notendur",
"column.notifications": "Tilkynningar",
"column.pins": "Föst tíst",
"column.public": "Sameiginleg tímalína",
"column_back_button.label": "Til baka",
"column_header.hide_settings": "Fela stillingar",
"column_header.moveLeft_settings": "Færa dálk til vinstri",
"column_header.moveRight_settings": "Færa dálk til hægri",
"column_header.pin": "Festa",
"column_header.show_settings": "Birta stillingar",
"column_header.unpin": "Losa",
"column_subheading.settings": "Stillingar",
"community.column_settings.media_only": "Einungis myndskrár",
"compose_form.direct_message_warning": "Þetta tíst verður aðeins sent á notendur sem minnst er á.",
"compose_form.direct_message_warning_learn_more": "Kanna nánar",
"compose_form.hashtag_warning": "Þetta tíst verður ekki talið með undir nokkru myllumerki þar sem það er óskráð. Einungis er hægt að leita að opinberum tístum eftir myllumerkjum.",
"compose_form.lock_disclaimer": "Aðgangurinn þinn er ekki {locked}. Hver sem er getur fylgst með þeim færslum þínum sem einungis eru til fylgjenda þinna.",
"compose_form.lock_disclaimer.lock": "læst",
"compose_form.placeholder": "Hvað varstu að hugsa?",
"compose_form.poll.add_option": "Bæta við valkosti",
"compose_form.poll.duration": "Tímalengd könnunar",
"compose_form.poll.option_placeholder": "Valkostur {number}",
"compose_form.poll.remove_option": "Fjarlægja þennan valkost",
"compose_form.poll.switch_to_multiple": "Breyta könnun svo hægt sé að hafa marga valkosti",
"compose_form.poll.switch_to_single": "Breyta könnun svo hægt sé að hafa einn stakan valkost",
"compose_form.publish": "Tíst",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Merkja myndir sem viðkvæmar",
"compose_form.sensitive.marked": "Mynd er merkt sem viðkvæm",
"compose_form.sensitive.unmarked": "Mynd er ekki merkt sem viðkvæm",
"compose_form.spoiler.marked": "Texti er falinn á bak við aðvörun",
"compose_form.spoiler.unmarked": "Texti er ekki falinn",
"compose_form.spoiler_placeholder": "Skrifaðu aðvörunina þína hér",
"confirmation_modal.cancel": "Hætta við",
"confirmations.block.block_and_report": "Útiloka og kæra",
"confirmations.block.confirm": "Útiloka",
"confirmations.block.message": "Ertu viss um að þú viljir loka á {name}?",
"confirmations.delete.confirm": "Eyða",
"confirmations.delete.message": "Ertu viss um að þú viljir eyða þessari stöðufærslu?",
"confirmations.delete_list.confirm": "Eyða",
"confirmations.delete_list.message": "Ertu viss um að þú viljir eyða þessum lista endanlega?",
"confirmations.domain_block.confirm": "Fela allt lénið",
"confirmations.domain_block.message": "Ertu alveg algjörlega viss um að þú viljir loka á allt {domain}? Í flestum tilfellum er vænlegra að nota færri en markvissari útilokanir eða að þagga niður tiltekna aðila. Þú munt ekki sjá efni frá þessu léni í neinum opinberum tímalínum eða í tilkynningunum þínum. Fylgjendur þínir frá þessu léni verða fjarlægðir.",
"confirmations.logout.confirm": "Skrá út",
"confirmations.logout.message": "Ertu viss um að þú viljir skrá þig út?",
"confirmations.mute.confirm": "Þagga",
"confirmations.mute.explanation": "Þetta mun fela færslur frá þeim og þær færslur þar sem minnst er á þau, en það mun samt sem áður gera þeim kleift að sjá færslurnar þínar og að fylgjast með þér.",
"confirmations.mute.message": "Ertu viss um að þú viljir þagga niður í {name}?",
"confirmations.redraft.confirm": "Eyða og enduvinna drög",
"confirmations.redraft.message": "Ertu viss um að þú viljir eyða þessari stöðufærslu og enduvinna drögin? Eftirlæti og endurbirtingar munu tapast og svör við upprunalegu fæerslunni munu verða munaðarlaus.",
"confirmations.reply.confirm": "Svara",
"confirmations.reply.message": "Ef þú svarar núna verður skrifað yfir skilaboðin sem þú ert að semja núna. Ertu viss um að þú viljir halda áfram?",
"confirmations.unfollow.confirm": "Hætta að fylgja",
"confirmations.unfollow.message": "Ertu viss um að þú viljir hætta að fylgjast með {name}?",
"conversation.delete": "Eyða samtali",
"conversation.mark_as_read": "Merkja sem lesið",
"conversation.open": "Skoða samtal",
"conversation.with": "Með {names}",
"directory.federated": "Frá samtengdum vefþjónum",
"directory.local": "Einungis frá {domain}",
"directory.new_arrivals": "Nýkomnir",
"directory.recently_active": "Nýleg virkni",
"embed.instructions": "Felldu þessa færslu inn í vefsvæðið þitt með því að afrita kóðann hér fyrir neðan.",
"embed.preview": "Svona mun þetta líta út:",
"emoji_button.activity": "Virkni",
"emoji_button.custom": "Sérsniðið",
"emoji_button.flags": "Flögg",
"emoji_button.food": "Matur og drykkur",
"emoji_button.label": "Setja inn tjáningartákn",
"emoji_button.nature": "Náttúra",
"emoji_button.not_found": "Engin tjáningartákn!! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "Hlutir",
"emoji_button.people": "Fólk",
"emoji_button.recent": "Oft notað",
"emoji_button.search": "Leita...",
"emoji_button.search_results": "Leitarniðurstöður",
"emoji_button.symbols": "Tákn",
"emoji_button.travel": "Ferðalög og staðir",
"empty_column.account_timeline": "Engin tíst hér!",
"empty_column.account_unavailable": "Notandasnið ekki tiltækt",
"empty_column.blocks": "Þú hefur ekki ennþá útilokað neina notendur.",
"empty_column.bookmarked_statuses": "Þú ert ekki ennþá með nein bókamerkt tíst. Þegar þú gefur tísti bókamerki, munu það birtast hér.",
"empty_column.community": "Staðværa tímalínan er tóm. Skrifaðu eitthvað opinberlega til að láta boltann fara að rúlla!",
"empty_column.direct": "Þú átt ennþá engin bein skilaboð. Þegar þú sendir eða tekur á móti slíkum skilaboðum, munu þau birtast hér.",
"empty_column.domain_blocks": "Það eru engin falin lén ennþá.",
"empty_column.favourited_statuses": "Þú átt ennþá engin eftirlætistíst. Þegar þú setur tíst í eftirlæti, munu þau birtast hér.",
"empty_column.favourites": "Enginn hefur ennþá set þetta tíst í eftirlæti. Þegar einhverjir gera það, munu þeir birtast hér.",
"empty_column.follow_requests": "Þú átt ennþá engar beiðnir um að fylgja þér. Þegar þú færð slíkar beiðnir, munu þær birtast hér.",
"empty_column.hashtag": "Það er ekkert ennþá undir þessu myllumerki.",
"empty_column.home": "Heimatímalínan þín er tóm! Skoðaðu {public} eða notaðu leitina til að komast í ganf og finna annað fólk.",
"empty_column.home.public_timeline": "opinbera tímalínan",
"empty_column.list": "Það er ennþá ekki neitt á þessum lista. Þegar meðlimir á listanum senda inn nýjar stöðufærslur, munu þær birtast hér.",
"empty_column.lists": "Þú ert ennþá ekki með neina lista. Þegar þú byrð til einhvern lista, munu hann birtast hér.",
"empty_column.mutes": "Þú hefur ekki þaggað niður í neinum notendum ennþá.",
"empty_column.notifications": "Þú ert ekki ennþá með neinar tilkynningar. Vertu í samskiptum við aðra til að umræður fari af stað.",
"empty_column.public": "Það er ekkert hér! Skrifaðu eitthvað opinberlega, eða fylgstu með notendum á öðrum netþjónum til að fylla upp í þetta",
"error.unexpected_crash.explanation": "Vegna villu í kóðanum okkar eða samhæfnivandamála í vafra er ekki hægt að birta þessa síðu svo vel sé.",
"error.unexpected_crash.next_steps": "Prófaðu að endurlesa síðuna. Ef það hjálpar ekki til, má samt vera að þú getir notað Mastodon í gegnum annan vafra eða forrit.",
"errors.unexpected_crash.copy_stacktrace": "Afrita rakningarupplýsingar (stacktrace) á klippispjald",
"errors.unexpected_crash.report_issue": "Tilkynna vandamál",
"follow_request.authorize": "Heimila",
"follow_request.reject": "Hafna",
"getting_started.developers": "Forritarar",
"getting_started.directory": "Notandasniðamappa",
"getting_started.documentation": "Hjálparskjöl",
"getting_started.heading": "Komast í gang",
"getting_started.invite": "Bjóða fólki",
"getting_started.open_source_notice": "Mastodon er opinn og frjáls hugbúnaður. Þú getur lagt þitt af mörkum eða tilkynnt um vandamál á GitHub á slóðinni {github}.",
"getting_started.security": "Stillingar notandaaðgangs",
"getting_started.terms": "Þjónustuskilmálar",
"hashtag.column_header.tag_mode.all": "og {additional}",
"hashtag.column_header.tag_mode.any": "eða {additional}",
"hashtag.column_header.tag_mode.none": "án {additional}",
"hashtag.column_settings.select.no_options_message": "Engar tillögur fundust",
"hashtag.column_settings.select.placeholder": "Settu inn myllumerki…",
"hashtag.column_settings.tag_mode.all": "Allt þetta",
"hashtag.column_settings.tag_mode.any": "Hvað sem er af þessu",
"hashtag.column_settings.tag_mode.none": "Ekkert af þessu",
"hashtag.column_settings.tag_toggle": "Taka með viðbótarmerki fyrir þennan dálk",
"home.column_settings.basic": "Einfalt",
"home.column_settings.show_reblogs": "Sýna endurbirtingar",
"home.column_settings.show_replies": "Birta svör",
"home.hide_announcements": "Fela auglýsingar",
"home.show_announcements": "Birta auglýsingar",
"intervals.full.days": "{number, plural, one {# dagur} other {# dagar}}",
"intervals.full.hours": "{number, plural, one {# klukkustund} other {# klukkustundir}}",
"intervals.full.minutes": "{number, plural, one {# mínúta} other {# mínútur}}",
"introduction.federation.action": "Næsta",
"introduction.federation.federated.headline": "Sameiginlegt",
"introduction.federation.federated.text": "Opinberar færslur frá öðrum vefþjónum í skýjasambandinu birtast á sameiginlegu tímalínunni.",
"introduction.federation.home.headline": "Heim",
"introduction.federation.home.text": "Færslur frá fólki sem þú fylgist með birtast í heimastreyminu þínu. Þú getur fylgst með hverjum sem er á hvaða vefþjóni sem er!",
"introduction.federation.local.headline": "Staðvært",
"introduction.federation.local.text": "Opinberar færslur frá fólki á sama vefþjóni og þú birtast á staðværu tímalínunni.",
"introduction.interactions.action": "Ljúka leiðarvísinum!",
"introduction.interactions.favourite.headline": "Eftirlæti",
"introduction.interactions.favourite.text": "Þú getur vistað tíst til að eiga í handraðanum og látið höfundinn vita að þér hafi líkað það með því að setja það í eftirlætin þín.",
"introduction.interactions.reblog.headline": "Endurbirting",
"introduction.interactions.reblog.text": "Þú getur deilt tístum frá öðru fólki til þeirra sem fylgjast með þér með því að endurbirta færslurnar.",
"introduction.interactions.reply.headline": "Svara",
"introduction.interactions.reply.text": "Þú getur svarað tístum frá öðru fólki og eins sjálfum þér, sem mun binda tístin saman í samtal.",
"introduction.welcome.action": "Drífum okkur!",
"introduction.welcome.headline": "Fyrstu skrefin",
"introduction.welcome.text": "Velkomin í skýjasambandið (fediverse)! Eftir augnablik geturðu farið að útvarpa skilaboðum og spjalla við vini þína úti um víða veröld, allt í gegnum ýmsar gerðir vefþjóna sem samt geta talað saman. En þessi vefþjónn, {domain}, er sérstakur — hann hýsir notandasniðið þitt, þannig að þú skalt muna hvað hann heitir.",
"keyboard_shortcuts.back": "að fara til baka",
"keyboard_shortcuts.blocked": "að opna lista yfir útilokaða notendur",
"keyboard_shortcuts.boost": "að endurbirta",
"keyboard_shortcuts.column": "að setja virkni á stöðufærslu í einum af dálkunum",
"keyboard_shortcuts.compose": "að setja virkni á textainnsetningarreit",
"keyboard_shortcuts.description": "Lýsing",
"keyboard_shortcuts.direct": "að opna dálk með beinum skilaboðum",
"keyboard_shortcuts.down": "að fara neðar í listanum",
"keyboard_shortcuts.enter": "að opna stöðufærslu",
"keyboard_shortcuts.favourite": "að setja í eftirlæti",
"keyboard_shortcuts.favourites": "að opna eftirlætislista",
"keyboard_shortcuts.federated": "að opna sameiginlega tímalínu",
"keyboard_shortcuts.heading": "Flýtileiðir á lyklaborði",
"keyboard_shortcuts.home": "að opna heimatímalínu",
"keyboard_shortcuts.hotkey": "Flýtilykill",
"keyboard_shortcuts.legend": "að birta þessa skýringu",
"keyboard_shortcuts.local": "að opna staðværa tímalínu",
"keyboard_shortcuts.mention": "að minnast á höfund",
"keyboard_shortcuts.muted": "að opna lista yfir þaggaða notendur",
"keyboard_shortcuts.my_profile": "að opna notandasniðið þitt",
"keyboard_shortcuts.notifications": "að opna tilkynningadálk",
"keyboard_shortcuts.open_media": "til að opna margmiðlunargögn",
"keyboard_shortcuts.pinned": "að opna lista yfir föst tíst",
"keyboard_shortcuts.profile": "að opna notandasnið höfundar",
"keyboard_shortcuts.reply": "að svara",
"keyboard_shortcuts.requests": "að opna lista yfir fylgjendabeiðnir",
"keyboard_shortcuts.search": "að setja virkni í leit",
"keyboard_shortcuts.start": "að opna \"komast í gang\" dálk",
"keyboard_shortcuts.toggle_hidden": "að birta/fela texta á bak við aðvörun vegna efnis",
"keyboard_shortcuts.toggle_sensitivity": "að birta/fela myndir",
"keyboard_shortcuts.toot": "að byrja glænýtt tíst",
"keyboard_shortcuts.unfocus": "að taka virkni úr textainnsetningarreit eða leit",
"keyboard_shortcuts.up": "að fara ofar í listanum",
"lightbox.close": "Loka",
"lightbox.next": "Næsta",
"lightbox.previous": "Fyrra",
"lightbox.view_context": "Skoða samhengi",
"lists.account.add": "Bæta á lista",
"lists.account.remove": "Fjarlægja af lista",
"lists.delete": "Eyða lista",
"lists.edit": "Breyta lista",
"lists.edit.submit": "Breyta titli",
"lists.new.create": "Bæta við lista",
"lists.new.title_placeholder": "Titill á nýjum lista",
"lists.search": "Leita meðal þeirra sem þú fylgist með",
"lists.subheading": "Listarnir þínir",
"load_pending": "{count, plural, one {# nýtt atriði} other {# ný atriði}}",
"loading_indicator.label": "Hleð inn...",
"media_gallery.toggle_visible": "Víxla sýnileika",
"missing_indicator.label": "Fannst ekki",
"missing_indicator.sublabel": "Tilfangið fannst ekki",
"mute_modal.hide_notifications": "Fela tilkynningar frá þessum notanda?",
"navigation_bar.apps": "Farsímaforrit",
"navigation_bar.blocks": "Útilokaðir notendur",
"navigation_bar.bookmarks": "Bókamerki",
"navigation_bar.community_timeline": "Staðvær tímalína",
"navigation_bar.compose": "Semja nýtt tíst",
"navigation_bar.direct": "Bein skilaboð",
"navigation_bar.discover": "Uppgötva",
"navigation_bar.domain_blocks": "Falin lén",
"navigation_bar.edit_profile": "Breyta notandasniði",
"navigation_bar.favourites": "Eftirlæti",
"navigation_bar.filters": "Þögguð orð",
"navigation_bar.follow_requests": "Beiðnir um að fylgjast með",
"navigation_bar.follows_and_followers": "Fylgist með og fylgjendur",
"navigation_bar.info": "Um þennan vefþjón",
"navigation_bar.keyboard_shortcuts": "Flýtilyklar",
"navigation_bar.lists": "Listar",
"navigation_bar.logout": "Útskráning",
"navigation_bar.mutes": "Þaggaðir notendur",
"navigation_bar.personal": "Einka",
"navigation_bar.pins": "Föst tíst",
"navigation_bar.preferences": "Kjörstillingar",
"navigation_bar.public_timeline": "Sameiginleg tímalína",
"navigation_bar.security": "Öryggi",
"notification.favourite": "{name} setti stöðufærslu þína í eftirlæti",
"notification.follow": "{name} fylgist með þér",
"notification.follow_request": "{name} hefur beðið um að fylgjast með þér",
"notification.mention": "{name} minntist á þig",
"notification.own_poll": "Könnuninni þinni er lokið",
"notification.poll": "Könnun sem þú tókst þátt í er lokið",
"notification.reblog": "{name} endurbirti stöðufærsluna þína",
"notifications.clear": "Hreinsa tilkynningar",
"notifications.clear_confirmation": "Ertu viss um að þú viljir endanlega eyða öllum tilkynningunum þínum?",
"notifications.column_settings.alert": "Tilkynningar á skjáborði",
"notifications.column_settings.favourite": "Eftirlæti:",
"notifications.column_settings.filter_bar.advanced": "Birta alla flokka",
"notifications.column_settings.filter_bar.category": "Skyndisíustika",
"notifications.column_settings.filter_bar.show": "Sýna",
"notifications.column_settings.follow": "Nýir fylgjendur:",
"notifications.column_settings.follow_request": "Nýjar beiðnir um að fylgjast með:",
"notifications.column_settings.mention": "Tilvísanir:",
"notifications.column_settings.poll": "Niðurstöður könnunar:",
"notifications.column_settings.push": "Ýti-tilkynningar",
"notifications.column_settings.reblog": "Endurbirtingar:",
"notifications.column_settings.show": "Sýna í dálki",
"notifications.column_settings.sound": "Spila hljóð",
"notifications.filter.all": "Allt",
"notifications.filter.boosts": "Endurbirtingar",
"notifications.filter.favourites": "Eftirlæti",
"notifications.filter.follows": "Fylgist með",
"notifications.filter.mentions": "Tilvísanir",
"notifications.filter.polls": "Niðurstöður könnunar",
"notifications.group": "{count} tilkynningar",
"poll.closed": "Lokað",
"poll.refresh": "Endurlesa",
"poll.total_people": "{count, plural, one {# aðili} other {# aðilar}}",
"poll.total_votes": "{count, plural, one {# atkvæði} other {# atkvæði}}",
"poll.vote": "Greiða atkvæði",
"poll.voted": "Þú kaust þetta svar",
"poll_button.add_poll": "Bæta við könnun",
"poll_button.remove_poll": "Fjarlægja könnun",
"privacy.change": "Aðlaga gagnaleynd stöðufærslu",
"privacy.direct.long": "Senda einungis á notendur sem minnst er á",
"privacy.direct.short": "Beint",
"privacy.private.long": "Senda einungis á fylgjendur",
"privacy.private.short": "Einungis fylgjendur",
"privacy.public.long": "Senda á opinberar tímalínur",
"privacy.public.short": "Opinbert",
"privacy.unlisted.long": "Ekki senda á opinberar tímalínur",
"privacy.unlisted.short": "Óskráð",
"refresh": "Endurlesa",
"regeneration_indicator.label": "Hleð inn…",
"regeneration_indicator.sublabel": "Verið er að útbúa heimastreymið þitt!",
"relative_time.days": "{number}d",
"relative_time.hours": "{number}kl.",
"relative_time.just_now": "núna",
"relative_time.minutes": "{number}mín",
"relative_time.seconds": "{number}sek",
"relative_time.today": "í dag",
"reply_indicator.cancel": "Hætta við",
"report.forward": "Áframsenda til {target}",
"report.forward_hint": "Notandaaðgangurinn er af öðrum vefþjóni. Á einnig að senda nafnlaust afrit af kærunni þangað?",
"report.hint": "Kæran verður send á umsjónarmenn vefþjónsins þíns. Þú getur gefið skýringu hér fyrir neðan á því af hverju þú ert að kæra þennan notandaaðgang:",
"report.placeholder": "Viðbótarathugasemdir",
"report.submit": "Senda inn",
"report.target": "Kæri {target}",
"search.placeholder": "Leita",
"search_popout.search_format": "Snið ítarlegrar leitar",
"search_popout.tips.full_text": "Einfaldur texti skilar stöðufærslum sem þú hefur skrifað, sett í eftirlæti, endurbirt eða verið minnst á þig í, ásamt samsvarandi birtingarnöfnum, notendanöfnum og myllumerkjum.",
"search_popout.tips.hashtag": "myllumerki",
"search_popout.tips.status": "stöðufærsla",
"search_popout.tips.text": "Einfaldur texti skilar samsvarandi birtingarnöfnum, notendanöfnum og myllumerkjum",
"search_popout.tips.user": "notandi",
"search_results.accounts": "Fólk",
"search_results.hashtags": "Myllumerki",
"search_results.statuses": "Tíst",
"search_results.statuses_fts_disabled": "Að leita í efni tísta er ekki virk á þessum Mastodon-þjóni.",
"search_results.total": "{count, number} {count, plural, one {niðurstaða} other {niðurstöður}}",
"status.admin_account": "Opna umsjónarviðmót fyrir @{name}",
"status.admin_status": "Opna þessa stöðufærslu í umsjónarviðmótinu",
"status.block": "Útiloka @{name}",
"status.bookmark": "Bókamerki",
"status.cancel_reblog_private": "Taka úr endurbirtingu",
"status.cannot_reblog": "Þessa færslu er ekki hægt að endurbirta",
"status.copy": "Afrita tengil í stöðufærslu",
"status.delete": "Eyða",
"status.detailed_status": "Nákvæm spjallþráðasýn",
"status.direct": "Bein skilaboð @{name}",
"status.embed": "Ívefja",
"status.favourite": "Eftirlæti",
"status.filtered": "Síað",
"status.load_more": "Hlaða inn meiru",
"status.media_hidden": "Mynd er falin",
"status.mention": "Minnast á @{name}",
"status.more": "Meira",
"status.mute": "Þagga niður í @{name}",
"status.mute_conversation": "Þagga niður í samtali",
"status.open": "Útliða þessa stöðu",
"status.pin": "Festa á notandasnið",
"status.pinned": "Fast tíst",
"status.read_more": "Lesa meira",
"status.reblog": "Endurbirting",
"status.reblog_private": "Endurbirta til upphaflegra lesenda",
"status.reblogged_by": "{name} endurbirti",
"status.reblogs.empty": "Enginn hefur ennþá endurbirt þetta tíst. Þegar einhverjir gera það, munu þeir birtast hér.",
"status.redraft": "Eyða og enduvinna drög",
"status.remove_bookmark": "Fjarlægja bókamerki",
"status.reply": "Svara",
"status.replyAll": "Svara þræði",
"status.report": "Kæra @{name}",
"status.sensitive_warning": "Viðkvæmt efni",
"status.share": "Deila",
"status.show_less": "Sýna minna",
"status.show_less_all": "Sýna minna fyrir allt",
"status.show_more": "Sýna meira",
"status.show_more_all": "Sýna meira fyrir allt",
"status.show_thread": "Birta þráð",
"status.uncached_media_warning": "Ekki tiltækt",
"status.unmute_conversation": "Hætta að þagga niður í samtali",
"status.unpin": "Losa af notandasniði",
"suggestions.dismiss": "Hafna tillögu",
"suggestions.header": "Þú gætir haft áhuga á…",
"tabs_bar.federated_timeline": "Sameiginlegt",
"tabs_bar.home": "Heim",
"tabs_bar.local_timeline": "Staðvært",
"tabs_bar.notifications": "Tilkynningar",
"tabs_bar.search": "Leita",
"time_remaining.days": "{number, plural, one {# dagur} other {# dagar}} eftir",
"time_remaining.hours": "{number, plural, one {# klukkustund} other {# klukkustundir}} eftir",
"time_remaining.minutes": "{number, plural, one {# mínúta} other {# mínútur}} eftir",
"time_remaining.moments": "Tími eftir",
"time_remaining.seconds": "{number, plural, one {# sekúnda} other {# sekúndur}} eftir",
"trends.count_by_accounts": "{count} {rawCount, plural, one {aðili} other {aðilar}} að tala",
"trends.trending_now": "Í umræðunni núna",
"ui.beforeunload": "Drögin tapast ef þú ferð út úr Mastodon.",
"upload_area.title": "Dragðu-og-slepptu hér til að senda inn",
"upload_button.label": "Bæta við ({formats}) myndskrá",
"upload_error.limit": "Fór yfir takmörk á innsendingum skráa.",
"upload_error.poll": "Innsending skráa er ekki leyfð í könnunum.",
"upload_form.audio_description": "Lýstu þessu fyrir heyrnarskerta",
"upload_form.description": "Lýstu þessu fyrir sjónskerta",
"upload_form.edit": "Breyta",
"upload_form.undo": "Eyða",
"upload_form.video_description": "Lýstu þessu fyrir fólk sem heyrir illa eða er með skerta sjón",
"upload_modal.analyzing_picture": "Greini mynd…",
"upload_modal.apply": "Virkja",
"upload_modal.description_placeholder": "Öllum dýrunum í skóginum þætti bezt að vera vinir",
"upload_modal.detect_text": "Skynja texta úr mynd",
"upload_modal.edit_media": "Breyta myndskrá",
"upload_modal.hint": "Smelltu eða dragðu til hringinn á forskoðuninni til að velja miðpunktinn sem verður alltaf sýnilegastur á öllum smámyndum.",
"upload_modal.preview_label": "Forskoðun ({ratio})",
"upload_progress.label": "Er að senda inn...",
"video.close": "Loka myndskeiði",
"video.download": "Sækja skrá",
"video.exit_fullscreen": "Hætta í skjáfylli",
"video.expand": "Stækka myndskeið",
"video.fullscreen": "Skjáfylli",
"video.hide": "Fela myndskeið",
"video.mute": "Þagga hljóð",
"video.pause": "Gera hlé",
"video.play": "Spila",
"video.unmute": "Kveikja á hljóði"
}

Some files were not shown because too many files have changed in this diff Show More