Merge pull request #1267 from ThibG/glitch-soc/merge-upstream

Merge upstream changes
This commit is contained in:
ThibG 2020-01-25 19:07:32 +01:00 committed by GitHub
commit 5bd752081f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
73 changed files with 1207 additions and 423 deletions

View file

@ -5,7 +5,6 @@ export const ANNOUNCEMENTS_FETCH_REQUEST = 'ANNOUNCEMENTS_FETCH_REQUEST';
export const ANNOUNCEMENTS_FETCH_SUCCESS = 'ANNOUNCEMENTS_FETCH_SUCCESS'; export const ANNOUNCEMENTS_FETCH_SUCCESS = 'ANNOUNCEMENTS_FETCH_SUCCESS';
export const ANNOUNCEMENTS_FETCH_FAIL = 'ANNOUNCEMENTS_FETCH_FAIL'; export const ANNOUNCEMENTS_FETCH_FAIL = 'ANNOUNCEMENTS_FETCH_FAIL';
export const ANNOUNCEMENTS_UPDATE = 'ANNOUNCEMENTS_UPDATE'; export const ANNOUNCEMENTS_UPDATE = 'ANNOUNCEMENTS_UPDATE';
export const ANNOUNCEMENTS_DISMISS = 'ANNOUNCEMENTS_DISMISS';
export const ANNOUNCEMENTS_REACTION_ADD_REQUEST = 'ANNOUNCEMENTS_REACTION_ADD_REQUEST'; 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_SUCCESS = 'ANNOUNCEMENTS_REACTION_ADD_SUCCESS';
@ -17,6 +16,8 @@ export const ANNOUNCEMENTS_REACTION_REMOVE_FAIL = 'ANNOUNCEMENTS_REACTION_REM
export const ANNOUNCEMENTS_REACTION_UPDATE = 'ANNOUNCEMENTS_REACTION_UPDATE'; export const ANNOUNCEMENTS_REACTION_UPDATE = 'ANNOUNCEMENTS_REACTION_UPDATE';
export const ANNOUNCEMENTS_TOGGLE_SHOW = 'ANNOUNCEMENTS_TOGGLE_SHOW';
const noOp = () => {}; const noOp = () => {};
export const fetchAnnouncements = (done = noOp) => (dispatch, getState) => { export const fetchAnnouncements = (done = noOp) => (dispatch, getState) => {
@ -54,15 +55,6 @@ export const updateAnnouncements = announcement => ({
announcement: normalizeAnnouncement(announcement), announcement: normalizeAnnouncement(announcement),
}); });
export const dismissAnnouncement = announcementId => (dispatch, getState) => {
dispatch({
type: ANNOUNCEMENTS_DISMISS,
id: announcementId,
});
api(getState).post(`/api/v1/announcements/${announcementId}/dismiss`);
};
export const addReaction = (announcementId, name) => (dispatch, getState) => { export const addReaction = (announcementId, name) => (dispatch, getState) => {
dispatch(addReactionRequest(announcementId, name)); dispatch(addReactionRequest(announcementId, name));
@ -131,3 +123,9 @@ export const updateReaction = reaction => ({
type: ANNOUNCEMENTS_REACTION_UPDATE, type: ANNOUNCEMENTS_REACTION_UPDATE,
reaction, reaction,
}); });
export function toggleShowAnnouncements() {
return dispatch => {
dispatch({ type: ANNOUNCEMENTS_TOGGLE_SHOW });
};
}

View file

@ -277,19 +277,13 @@ class Announcement extends ImmutablePureComponent {
static propTypes = { static propTypes = {
announcement: ImmutablePropTypes.map.isRequired, announcement: ImmutablePropTypes.map.isRequired,
emojiMap: ImmutablePropTypes.map.isRequired, emojiMap: ImmutablePropTypes.map.isRequired,
dismissAnnouncement: PropTypes.func.isRequired,
addReaction: PropTypes.func.isRequired, addReaction: PropTypes.func.isRequired,
removeReaction: PropTypes.func.isRequired, removeReaction: PropTypes.func.isRequired,
intl: PropTypes.object.isRequired, intl: PropTypes.object.isRequired,
}; };
handleDismissClick = () => {
const { dismissAnnouncement, announcement } = this.props;
dismissAnnouncement(announcement.get('id'));
}
render () { render () {
const { announcement, intl } = this.props; const { announcement } = this.props;
const startsAt = announcement.get('starts_at') && new Date(announcement.get('starts_at')); 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 endsAt = announcement.get('ends_at') && new Date(announcement.get('ends_at'));
const now = new Date(); const now = new Date();
@ -314,8 +308,6 @@ class Announcement extends ImmutablePureComponent {
removeReaction={this.props.removeReaction} removeReaction={this.props.removeReaction}
emojiMap={this.props.emojiMap} emojiMap={this.props.emojiMap}
/> />
<IconButton title={intl.formatMessage(messages.close)} icon='times' className='announcements__item__dismiss-icon' onClick={this.handleDismissClick} />
</div> </div>
); );
} }
@ -328,8 +320,6 @@ class Announcements extends ImmutablePureComponent {
static propTypes = { static propTypes = {
announcements: ImmutablePropTypes.list, announcements: ImmutablePropTypes.list,
emojiMap: ImmutablePropTypes.map.isRequired, emojiMap: ImmutablePropTypes.map.isRequired,
fetchAnnouncements: PropTypes.func.isRequired,
dismissAnnouncement: PropTypes.func.isRequired,
addReaction: PropTypes.func.isRequired, addReaction: PropTypes.func.isRequired,
removeReaction: PropTypes.func.isRequired, removeReaction: PropTypes.func.isRequired,
intl: PropTypes.object.isRequired, intl: PropTypes.object.isRequired,
@ -339,11 +329,6 @@ class Announcements extends ImmutablePureComponent {
index: 0, index: 0,
}; };
componentDidMount () {
const { fetchAnnouncements } = this.props;
fetchAnnouncements();
}
handleChangeIndex = index => { handleChangeIndex = index => {
this.setState({ index: index % this.props.announcements.size }); this.setState({ index: index % this.props.announcements.size });
} }
@ -369,13 +354,12 @@ class Announcements extends ImmutablePureComponent {
<img className='announcements__mastodon' alt='' draggable='false' src={mascot || elephantUIPlane} /> <img className='announcements__mastodon' alt='' draggable='false' src={mascot || elephantUIPlane} />
<div className='announcements__container'> <div className='announcements__container'>
<ReactSwipeableViews index={index} onChangeIndex={this.handleChangeIndex}> <ReactSwipeableViews animateHeight index={index} onChangeIndex={this.handleChangeIndex}>
{announcements.map(announcement => ( {announcements.map(announcement => (
<Announcement <Announcement
key={announcement.get('id')} key={announcement.get('id')}
announcement={announcement} announcement={announcement}
emojiMap={this.props.emojiMap} emojiMap={this.props.emojiMap}
dismissAnnouncement={this.props.dismissAnnouncement}
addReaction={this.props.addReaction} addReaction={this.props.addReaction}
removeReaction={this.props.removeReaction} removeReaction={this.props.removeReaction}
intl={intl} intl={intl}

View file

@ -1,5 +1,5 @@
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { fetchAnnouncements, dismissAnnouncement, addReaction, removeReaction } from 'mastodon/actions/announcements'; import { addReaction, removeReaction } from 'flavours/glitch/actions/announcements';
import Announcements from '../components/announcements'; import Announcements from '../components/announcements';
import { createSelector } from 'reselect'; import { createSelector } from 'reselect';
import { Map as ImmutableMap } from 'immutable'; import { Map as ImmutableMap } from 'immutable';
@ -12,8 +12,6 @@ const mapStateToProps = state => ({
}); });
const mapDispatchToProps = dispatch => ({ const mapDispatchToProps = dispatch => ({
fetchAnnouncements: () => dispatch(fetchAnnouncements()),
dismissAnnouncement: id => dispatch(dismissAnnouncement(id)),
addReaction: (id, name) => dispatch(addReaction(id, name)), addReaction: (id, name) => dispatch(addReaction(id, name)),
removeReaction: (id, name) => dispatch(removeReaction(id, name)), removeReaction: (id, name) => dispatch(removeReaction(id, name)),
}); });

View file

@ -9,15 +9,23 @@ import { addColumn, removeColumn, moveColumn } from 'flavours/glitch/actions/col
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl'; import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import ColumnSettingsContainer from './containers/column_settings_container'; import ColumnSettingsContainer from './containers/column_settings_container';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import { fetchAnnouncements, toggleShowAnnouncements } from 'flavours/glitch/actions/announcements';
import AnnouncementsContainer from 'flavours/glitch/features/getting_started/containers/announcements_container'; import AnnouncementsContainer from 'flavours/glitch/features/getting_started/containers/announcements_container';
import classNames from 'classnames';
import IconWithBadge from 'flavours/glitch/components/icon_with_badge';
const messages = defineMessages({ const messages = defineMessages({
title: { id: 'column.home', defaultMessage: 'Home' }, 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 => ({ const mapStateToProps = state => ({
hasUnread: state.getIn(['timelines', 'home', 'unread']) > 0, hasUnread: state.getIn(['timelines', 'home', 'unread']) > 0,
isPartial: state.getIn(['timelines', 'home', 'isPartial']), isPartial: state.getIn(['timelines', 'home', 'isPartial']),
hasAnnouncements: !state.getIn(['announcements', 'items']).isEmpty(),
unreadAnnouncements: state.getIn(['announcements', 'unread']).size,
showAnnouncements: state.getIn(['announcements', 'show']),
}); });
export default @connect(mapStateToProps) export default @connect(mapStateToProps)
@ -31,6 +39,9 @@ class HomeTimeline extends React.PureComponent {
isPartial: PropTypes.bool, isPartial: PropTypes.bool,
columnId: PropTypes.string, columnId: PropTypes.string,
multiColumn: PropTypes.bool, multiColumn: PropTypes.bool,
hasAnnouncements: PropTypes.bool,
unreadAnnouncements: PropTypes.number,
showAnnouncements: PropTypes.bool,
}; };
handlePin = () => { handlePin = () => {
@ -61,6 +72,7 @@ class HomeTimeline extends React.PureComponent {
} }
componentDidMount () { componentDidMount () {
this.props.dispatch(fetchAnnouncements());
this._checkIfReloadNeeded(false, this.props.isPartial); this._checkIfReloadNeeded(false, this.props.isPartial);
} }
@ -93,10 +105,31 @@ class HomeTimeline extends React.PureComponent {
} }
} }
handleToggleAnnouncementsClick = (e) => {
e.stopPropagation();
this.props.dispatch(toggleShowAnnouncements());
}
render () { render () {
const { intl, hasUnread, columnId, multiColumn } = this.props; const { intl, hasUnread, columnId, multiColumn, hasAnnouncements, unreadAnnouncements, showAnnouncements } = this.props;
const pinned = !!columnId; 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 ( return (
<Column bindToDocument={!multiColumn} ref={this.setRef} name='home' label={intl.formatMessage(messages.title)}> <Column bindToDocument={!multiColumn} ref={this.setRef} name='home' label={intl.formatMessage(messages.title)}>
<ColumnHeader <ColumnHeader
@ -108,13 +141,14 @@ class HomeTimeline extends React.PureComponent {
onClick={this.handleHeaderClick} onClick={this.handleHeaderClick}
pinned={pinned} pinned={pinned}
multiColumn={multiColumn} multiColumn={multiColumn}
extraButton={announcementsButton}
> >
<ColumnSettingsContainer /> <ColumnSettingsContainer />
</ColumnHeader> </ColumnHeader>
{hasAnnouncements && showAnnouncements && <AnnouncementsContainer />}
<StatusListContainer <StatusListContainer
prepend={<AnnouncementsContainer />}
alwaysPrepend
trackScroll={!pinned} trackScroll={!pinned}
scrollKey={`home_timeline-${columnId}`} scrollKey={`home_timeline-${columnId}`}
onLoadMore={this.handleLoadMore} onLoadMore={this.handleLoadMore}

View file

@ -3,18 +3,20 @@ import {
ANNOUNCEMENTS_FETCH_SUCCESS, ANNOUNCEMENTS_FETCH_SUCCESS,
ANNOUNCEMENTS_FETCH_FAIL, ANNOUNCEMENTS_FETCH_FAIL,
ANNOUNCEMENTS_UPDATE, ANNOUNCEMENTS_UPDATE,
ANNOUNCEMENTS_DISMISS,
ANNOUNCEMENTS_REACTION_UPDATE, ANNOUNCEMENTS_REACTION_UPDATE,
ANNOUNCEMENTS_REACTION_ADD_REQUEST, ANNOUNCEMENTS_REACTION_ADD_REQUEST,
ANNOUNCEMENTS_REACTION_ADD_FAIL, ANNOUNCEMENTS_REACTION_ADD_FAIL,
ANNOUNCEMENTS_REACTION_REMOVE_REQUEST, ANNOUNCEMENTS_REACTION_REMOVE_REQUEST,
ANNOUNCEMENTS_REACTION_REMOVE_FAIL, ANNOUNCEMENTS_REACTION_REMOVE_FAIL,
ANNOUNCEMENTS_TOGGLE_SHOW,
} from '../actions/announcements'; } from '../actions/announcements';
import { Map as ImmutableMap, List as ImmutableList, fromJS } from 'immutable'; import { Map as ImmutableMap, List as ImmutableList, Set as ImmutableSet, fromJS } from 'immutable';
const initialState = ImmutableMap({ const initialState = ImmutableMap({
items: ImmutableList(), items: ImmutableList(),
isLoading: false, isLoading: false,
show: true,
unread: ImmutableSet(),
}); });
const updateReaction = (state, id, name, updater) => state.update('items', list => list.map(announcement => { const updateReaction = (state, id, name, updater) => state.update('items', list => list.map(announcement => {
@ -43,21 +45,35 @@ const addReaction = (state, id, name) => updateReaction(state, id, name, x => x.
const removeReaction = (state, id, name) => updateReaction(state, id, name, x => x.set('me', false).update('count', y => y - 1)); const removeReaction = (state, id, name) => updateReaction(state, id, name, x => x.set('me', false).update('count', y => y - 1));
const addUnread = (state, items) => {
if (state.get('show')) return state;
const newIds = ImmutableSet(items.map(x => x.get('id')));
const oldIds = ImmutableSet(state.get('items').map(x => x.get('id')));
return state.update('unread', unread => unread.union(newIds.subtract(oldIds)));
};
export default function announcementsReducer(state = initialState, action) { export default function announcementsReducer(state = initialState, action) {
switch(action.type) { switch(action.type) {
case ANNOUNCEMENTS_TOGGLE_SHOW:
return state.withMutations(map => {
if (!map.get('show')) map.set('unread', ImmutableSet());
map.set('show', !map.get('show'));
});
case ANNOUNCEMENTS_FETCH_REQUEST: case ANNOUNCEMENTS_FETCH_REQUEST:
return state.set('isLoading', true); return state.set('isLoading', true);
case ANNOUNCEMENTS_FETCH_SUCCESS: case ANNOUNCEMENTS_FETCH_SUCCESS:
return state.withMutations(map => { return state.withMutations(map => {
map.set('items', fromJS(action.announcements)); const items = fromJS(action.announcements);
map.set('unread', ImmutableSet());
addUnread(map, items);
map.set('items', items);
map.set('isLoading', false); map.set('isLoading', false);
}); });
case ANNOUNCEMENTS_FETCH_FAIL: case ANNOUNCEMENTS_FETCH_FAIL:
return state.set('isLoading', false); return state.set('isLoading', false);
case ANNOUNCEMENTS_UPDATE: case ANNOUNCEMENTS_UPDATE:
return state.update('items', list => list.unshift(fromJS(action.announcement)).sortBy(announcement => announcement.get('starts_at'))); return addUnread(state, [fromJS(action.announcement)]).update('items', list => list.unshift(fromJS(action.announcement)).sortBy(announcement => announcement.get('starts_at')));
case ANNOUNCEMENTS_DISMISS:
return state.update('items', list => list.filterNot(announcement => announcement.get('id') === action.id));
case ANNOUNCEMENTS_REACTION_UPDATE: case ANNOUNCEMENTS_REACTION_UPDATE:
return updateReactionCount(state, action.reaction); return updateReactionCount(state, action.reaction);
case ANNOUNCEMENTS_REACTION_ADD_REQUEST: case ANNOUNCEMENTS_REACTION_ADD_REQUEST:

View file

@ -37,7 +37,7 @@
} }
.announcements { .announcements {
background: lighten($ui-base-color, 4%); background: lighten($ui-base-color, 8%);
border-top: 1px solid $ui-base-color; border-top: 1px solid $ui-base-color;
font-size: 13px; font-size: 13px;
display: flex; display: flex;
@ -78,12 +78,6 @@
font-weight: 500; font-weight: 500;
margin-bottom: 10px; margin-bottom: 10px;
} }
&__dismiss-icon {
position: absolute;
top: 12px;
right: 12px;
}
} }
&__pagination { &__pagination {

View file

@ -5,7 +5,6 @@ export const ANNOUNCEMENTS_FETCH_REQUEST = 'ANNOUNCEMENTS_FETCH_REQUEST';
export const ANNOUNCEMENTS_FETCH_SUCCESS = 'ANNOUNCEMENTS_FETCH_SUCCESS'; export const ANNOUNCEMENTS_FETCH_SUCCESS = 'ANNOUNCEMENTS_FETCH_SUCCESS';
export const ANNOUNCEMENTS_FETCH_FAIL = 'ANNOUNCEMENTS_FETCH_FAIL'; export const ANNOUNCEMENTS_FETCH_FAIL = 'ANNOUNCEMENTS_FETCH_FAIL';
export const ANNOUNCEMENTS_UPDATE = 'ANNOUNCEMENTS_UPDATE'; export const ANNOUNCEMENTS_UPDATE = 'ANNOUNCEMENTS_UPDATE';
export const ANNOUNCEMENTS_DISMISS = 'ANNOUNCEMENTS_DISMISS';
export const ANNOUNCEMENTS_REACTION_ADD_REQUEST = 'ANNOUNCEMENTS_REACTION_ADD_REQUEST'; 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_SUCCESS = 'ANNOUNCEMENTS_REACTION_ADD_SUCCESS';
@ -17,6 +16,8 @@ export const ANNOUNCEMENTS_REACTION_REMOVE_FAIL = 'ANNOUNCEMENTS_REACTION_REM
export const ANNOUNCEMENTS_REACTION_UPDATE = 'ANNOUNCEMENTS_REACTION_UPDATE'; export const ANNOUNCEMENTS_REACTION_UPDATE = 'ANNOUNCEMENTS_REACTION_UPDATE';
export const ANNOUNCEMENTS_TOGGLE_SHOW = 'ANNOUNCEMENTS_TOGGLE_SHOW';
const noOp = () => {}; const noOp = () => {};
export const fetchAnnouncements = (done = noOp) => (dispatch, getState) => { export const fetchAnnouncements = (done = noOp) => (dispatch, getState) => {
@ -54,15 +55,6 @@ export const updateAnnouncements = announcement => ({
announcement: normalizeAnnouncement(announcement), announcement: normalizeAnnouncement(announcement),
}); });
export const dismissAnnouncement = announcementId => (dispatch, getState) => {
dispatch({
type: ANNOUNCEMENTS_DISMISS,
id: announcementId,
});
api(getState).post(`/api/v1/announcements/${announcementId}/dismiss`);
};
export const addReaction = (announcementId, name) => (dispatch, getState) => { export const addReaction = (announcementId, name) => (dispatch, getState) => {
dispatch(addReactionRequest(announcementId, name)); dispatch(addReactionRequest(announcementId, name));
@ -131,3 +123,9 @@ export const updateReaction = reaction => ({
type: ANNOUNCEMENTS_REACTION_UPDATE, type: ANNOUNCEMENTS_REACTION_UPDATE,
reaction, reaction,
}); });
export function toggleShowAnnouncements() {
return dispatch => {
dispatch({ type: ANNOUNCEMENTS_TOGGLE_SHOW });
};
}

View file

@ -277,19 +277,13 @@ class Announcement extends ImmutablePureComponent {
static propTypes = { static propTypes = {
announcement: ImmutablePropTypes.map.isRequired, announcement: ImmutablePropTypes.map.isRequired,
emojiMap: ImmutablePropTypes.map.isRequired, emojiMap: ImmutablePropTypes.map.isRequired,
dismissAnnouncement: PropTypes.func.isRequired,
addReaction: PropTypes.func.isRequired, addReaction: PropTypes.func.isRequired,
removeReaction: PropTypes.func.isRequired, removeReaction: PropTypes.func.isRequired,
intl: PropTypes.object.isRequired, intl: PropTypes.object.isRequired,
}; };
handleDismissClick = () => {
const { dismissAnnouncement, announcement } = this.props;
dismissAnnouncement(announcement.get('id'));
}
render () { render () {
const { announcement, intl } = this.props; const { announcement } = this.props;
const startsAt = announcement.get('starts_at') && new Date(announcement.get('starts_at')); 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 endsAt = announcement.get('ends_at') && new Date(announcement.get('ends_at'));
const now = new Date(); const now = new Date();
@ -314,8 +308,6 @@ class Announcement extends ImmutablePureComponent {
removeReaction={this.props.removeReaction} removeReaction={this.props.removeReaction}
emojiMap={this.props.emojiMap} emojiMap={this.props.emojiMap}
/> />
<IconButton title={intl.formatMessage(messages.close)} icon='times' className='announcements__item__dismiss-icon' onClick={this.handleDismissClick} />
</div> </div>
); );
} }
@ -328,8 +320,6 @@ class Announcements extends ImmutablePureComponent {
static propTypes = { static propTypes = {
announcements: ImmutablePropTypes.list, announcements: ImmutablePropTypes.list,
emojiMap: ImmutablePropTypes.map.isRequired, emojiMap: ImmutablePropTypes.map.isRequired,
fetchAnnouncements: PropTypes.func.isRequired,
dismissAnnouncement: PropTypes.func.isRequired,
addReaction: PropTypes.func.isRequired, addReaction: PropTypes.func.isRequired,
removeReaction: PropTypes.func.isRequired, removeReaction: PropTypes.func.isRequired,
intl: PropTypes.object.isRequired, intl: PropTypes.object.isRequired,
@ -339,11 +329,6 @@ class Announcements extends ImmutablePureComponent {
index: 0, index: 0,
}; };
componentDidMount () {
const { fetchAnnouncements } = this.props;
fetchAnnouncements();
}
handleChangeIndex = index => { handleChangeIndex = index => {
this.setState({ index: index % this.props.announcements.size }); this.setState({ index: index % this.props.announcements.size });
} }
@ -369,13 +354,12 @@ class Announcements extends ImmutablePureComponent {
<img className='announcements__mastodon' alt='' draggable='false' src={mascot || elephantUIPlane} /> <img className='announcements__mastodon' alt='' draggable='false' src={mascot || elephantUIPlane} />
<div className='announcements__container'> <div className='announcements__container'>
<ReactSwipeableViews index={index} onChangeIndex={this.handleChangeIndex}> <ReactSwipeableViews animateHeight index={index} onChangeIndex={this.handleChangeIndex}>
{announcements.map(announcement => ( {announcements.map(announcement => (
<Announcement <Announcement
key={announcement.get('id')} key={announcement.get('id')}
announcement={announcement} announcement={announcement}
emojiMap={this.props.emojiMap} emojiMap={this.props.emojiMap}
dismissAnnouncement={this.props.dismissAnnouncement}
addReaction={this.props.addReaction} addReaction={this.props.addReaction}
removeReaction={this.props.removeReaction} removeReaction={this.props.removeReaction}
intl={intl} intl={intl}

View file

@ -1,5 +1,5 @@
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { fetchAnnouncements, dismissAnnouncement, addReaction, removeReaction } from 'mastodon/actions/announcements'; import { addReaction, removeReaction } from 'mastodon/actions/announcements';
import Announcements from '../components/announcements'; import Announcements from '../components/announcements';
import { createSelector } from 'reselect'; import { createSelector } from 'reselect';
import { Map as ImmutableMap } from 'immutable'; import { Map as ImmutableMap } from 'immutable';
@ -12,8 +12,6 @@ const mapStateToProps = state => ({
}); });
const mapDispatchToProps = dispatch => ({ const mapDispatchToProps = dispatch => ({
fetchAnnouncements: () => dispatch(fetchAnnouncements()),
dismissAnnouncement: id => dispatch(dismissAnnouncement(id)),
addReaction: (id, name) => dispatch(addReaction(id, name)), addReaction: (id, name) => dispatch(addReaction(id, name)),
removeReaction: (id, name) => dispatch(removeReaction(id, name)), removeReaction: (id, name) => dispatch(removeReaction(id, name)),
}); });

View file

@ -9,15 +9,23 @@ import { addColumn, removeColumn, moveColumn } from '../../actions/columns';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl'; import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import ColumnSettingsContainer from './containers/column_settings_container'; import ColumnSettingsContainer from './containers/column_settings_container';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import { fetchAnnouncements, toggleShowAnnouncements } from 'mastodon/actions/announcements';
import AnnouncementsContainer from 'mastodon/features/getting_started/containers/announcements_container'; 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({ const messages = defineMessages({
title: { id: 'column.home', defaultMessage: 'Home' }, 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 => ({ const mapStateToProps = state => ({
hasUnread: state.getIn(['timelines', 'home', 'unread']) > 0, hasUnread: state.getIn(['timelines', 'home', 'unread']) > 0,
isPartial: state.getIn(['timelines', 'home', 'isPartial']), isPartial: state.getIn(['timelines', 'home', 'isPartial']),
hasAnnouncements: !state.getIn(['announcements', 'items']).isEmpty(),
unreadAnnouncements: state.getIn(['announcements', 'unread']).size,
showAnnouncements: state.getIn(['announcements', 'show']),
}); });
export default @connect(mapStateToProps) export default @connect(mapStateToProps)
@ -32,6 +40,9 @@ class HomeTimeline extends React.PureComponent {
isPartial: PropTypes.bool, isPartial: PropTypes.bool,
columnId: PropTypes.string, columnId: PropTypes.string,
multiColumn: PropTypes.bool, multiColumn: PropTypes.bool,
hasAnnouncements: PropTypes.bool,
unreadAnnouncements: PropTypes.number,
showAnnouncements: PropTypes.bool,
}; };
handlePin = () => { handlePin = () => {
@ -62,6 +73,7 @@ class HomeTimeline extends React.PureComponent {
} }
componentDidMount () { componentDidMount () {
this.props.dispatch(fetchAnnouncements());
this._checkIfReloadNeeded(false, this.props.isPartial); this._checkIfReloadNeeded(false, this.props.isPartial);
} }
@ -94,10 +106,31 @@ class HomeTimeline extends React.PureComponent {
} }
} }
handleToggleAnnouncementsClick = (e) => {
e.stopPropagation();
this.props.dispatch(toggleShowAnnouncements());
}
render () { render () {
const { intl, shouldUpdateScroll, hasUnread, columnId, multiColumn } = this.props; const { intl, shouldUpdateScroll, hasUnread, columnId, multiColumn, hasAnnouncements, unreadAnnouncements, showAnnouncements } = this.props;
const pinned = !!columnId; 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 ( return (
<Column bindToDocument={!multiColumn} ref={this.setRef} label={intl.formatMessage(messages.title)}> <Column bindToDocument={!multiColumn} ref={this.setRef} label={intl.formatMessage(messages.title)}>
<ColumnHeader <ColumnHeader
@ -109,13 +142,14 @@ class HomeTimeline extends React.PureComponent {
onClick={this.handleHeaderClick} onClick={this.handleHeaderClick}
pinned={pinned} pinned={pinned}
multiColumn={multiColumn} multiColumn={multiColumn}
extraButton={announcementsButton}
> >
<ColumnSettingsContainer /> <ColumnSettingsContainer />
</ColumnHeader> </ColumnHeader>
{hasAnnouncements && showAnnouncements && <AnnouncementsContainer />}
<StatusListContainer <StatusListContainer
prepend={<AnnouncementsContainer />}
alwaysPrepend
trackScroll={!pinned} trackScroll={!pinned}
scrollKey={`home_timeline-${columnId}`} scrollKey={`home_timeline-${columnId}`}
onLoadMore={this.handleLoadMore} onLoadMore={this.handleLoadMore}

View file

@ -1,7 +1,7 @@
{ {
"account.add_or_remove_from_list": "Ouzhpenn pe lemel ag ar listennadoù", "account.add_or_remove_from_list": "Ouzhpenn pe lemel ag ar listennadoù",
"account.badges.bot": "Robot", "account.badges.bot": "Robot",
"account.badges.group": "Group", "account.badges.group": "Strollad",
"account.block": "Stankañ @{name}", "account.block": "Stankañ @{name}",
"account.block_domain": "Kuzh kement tra a {domain}", "account.block_domain": "Kuzh kement tra a {domain}",
"account.blocked": "Stanket", "account.blocked": "Stanket",
@ -35,17 +35,17 @@
"account.show_reblogs": "Diskouez toudoù a @{name}", "account.show_reblogs": "Diskouez toudoù a @{name}",
"account.unblock": "Distankañ @{name}", "account.unblock": "Distankañ @{name}",
"account.unblock_domain": "Diguzh {domain}", "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.unfollow": "Diheuliañ",
"account.unmute": "Diguzhat @{name}", "account.unmute": "Diguzhat @{name}",
"account.unmute_notifications": "Diguzhat kemennoù a @{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.rate_limited.title": "Rate limited",
"alert.unexpected.message": "Ur fazi dic'hortozet zo degouezhet.", "alert.unexpected.message": "Ur fazi dic'hortozet zo degouezhet.",
"alert.unexpected.title": "C'hem !", "alert.unexpected.title": "C'hem !",
"announcement.announcement": "Announcement", "announcement.announcement": "Kemenn",
"autosuggest_hashtag.per_week": "{count} bep sizhun", "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.body": "Something went wrong while loading this component.",
"bundle_column_error.retry": "Klask endro", "bundle_column_error.retry": "Klask endro",
"bundle_column_error.title": "Fazi rouedad", "bundle_column_error.title": "Fazi rouedad",
@ -53,12 +53,12 @@
"bundle_modal_error.message": "Something went wrong while loading this component.", "bundle_modal_error.message": "Something went wrong while loading this component.",
"bundle_modal_error.retry": "Klask endro", "bundle_modal_error.retry": "Klask endro",
"column.blocks": "Implijour·ezed·ion stanket", "column.blocks": "Implijour·ezed·ion stanket",
"column.bookmarks": "Bookmarks", "column.bookmarks": "Sinedoù",
"column.community": "Red-amzer lec'hel", "column.community": "Red-amzer lec'hel",
"column.direct": "Kemennadoù prevez", "column.direct": "Kemennadoù prevez",
"column.directory": "Mont a-dreuz ar profiloù", "column.directory": "Mont a-dreuz ar profiloù",
"column.domain_blocks": "Domani kuzhet", "column.domain_blocks": "Domani kuzhet",
"column.favourites": "Favourites", "column.favourites": "Ar re vuiañ-karet",
"column.follow_requests": "Pedadoù heuliañ", "column.follow_requests": "Pedadoù heuliañ",
"column.home": "Degemer", "column.home": "Degemer",
"column.lists": "Listennoù", "column.lists": "Listennoù",
@ -93,28 +93,28 @@
"compose_form.sensitive.marked": "Media is marked as sensitive", "compose_form.sensitive.marked": "Media is marked as sensitive",
"compose_form.sensitive.unmarked": "Media is not 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.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", "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.block_and_report": "Block & Report",
"confirmations.block.confirm": "Block", "confirmations.block.confirm": "Block",
"confirmations.block.message": "Are you sure you want to block {name}?", "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.message": "Are you sure you want to delete this status?",
"confirmations.delete_list.confirm": "Delete", "confirmations.delete_list.confirm": "Dilemel",
"confirmations.delete_list.message": "Are you sure you want to permanently delete this list?", "confirmations.delete_list.message": "Ha sur eo hoc'h eus c'hoant da zilemel ar roll-mañ da vat ?",
"confirmations.domain_block.confirm": "Hide entire domain", "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.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.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.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.mute.message": "Ha sur oc'h e fell deoc'h kuzhaat {name} ?",
"confirmations.redraft.confirm": "Delete & redraft", "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.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.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}?", "confirmations.unfollow.message": "Are you sure you want to unfollow {name}?",
"conversation.delete": "Delete conversation", "conversation.delete": "Delete conversation",
"conversation.mark_as_read": "Mark as read", "conversation.mark_as_read": "Mark as read",

View file

@ -8,8 +8,8 @@
"account.cancel_follow_request": "Anul·la la sol·licitud de seguiment", "account.cancel_follow_request": "Anul·la la sol·licitud de seguiment",
"account.direct": "Missatge directe @{name}", "account.direct": "Missatge directe @{name}",
"account.domain_blocked": "Domini ocult", "account.domain_blocked": "Domini ocult",
"account.edit_profile": "Editar el perfil", "account.edit_profile": "Edita el perfil",
"account.endorse": "Recomanar en el teu perfil", "account.endorse": "Recomana en el teu perfil",
"account.follow": "Segueix", "account.follow": "Segueix",
"account.followers": "Seguidors", "account.followers": "Seguidors",
"account.followers.empty": "Encara ningú no segueix aquest usuari.", "account.followers.empty": "Encara ningú no segueix aquest usuari.",
@ -29,13 +29,13 @@
"account.never_active": "Mai", "account.never_active": "Mai",
"account.posts": "Tuts", "account.posts": "Tuts",
"account.posts_with_replies": "Tuts i respostes", "account.posts_with_replies": "Tuts i respostes",
"account.report": "Informe @{name}", "account.report": "Informar sobre @{name}",
"account.requested": "Esperant aprovació. Clic per a cancel·lar la petició de seguiment", "account.requested": "Esperant aprovació. Clic per a cancel·lar la petició de seguiment",
"account.share": "Comparteix el perfil de @{name}", "account.share": "Comparteix el perfil de @{name}",
"account.show_reblogs": "Mostra els impulsos de @{name}", "account.show_reblogs": "Mostra els impulsos de @{name}",
"account.unblock": "Desbloca @{name}", "account.unblock": "Desbloqueja @{name}",
"account.unblock_domain": "Mostra {domain}", "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.unfollow": "Deixa de seguir",
"account.unmute": "Treure silenci de @{name}", "account.unmute": "Treure silenci de @{name}",
"account.unmute_notifications": "Activar notificacions de @{name}", "account.unmute_notifications": "Activar notificacions de @{name}",
@ -43,9 +43,9 @@
"alert.rate_limited.title": "Límit de freqüència", "alert.rate_limited.title": "Límit de freqüència",
"alert.unexpected.message": "S'ha produït un error inesperat.", "alert.unexpected.message": "S'ha produït un error inesperat.",
"alert.unexpected.title": "Vaja!", "alert.unexpected.title": "Vaja!",
"announcement.announcement": "Announcement", "announcement.announcement": "Anunci",
"autosuggest_hashtag.per_week": "{count} per setmana", "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.body": "S'ha produït un error en carregar aquest component.",
"bundle_column_error.retry": "Torna-ho a provar", "bundle_column_error.retry": "Torna-ho a provar",
"bundle_column_error.title": "Error de connexió", "bundle_column_error.title": "Error de connexió",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "Ghjettu limitatu", "alert.rate_limited.title": "Ghjettu limitatu",
"alert.unexpected.message": "Un prublemu inaspettatu hè accadutu.", "alert.unexpected.message": "Un prublemu inaspettatu hè accadutu.",
"alert.unexpected.title": "Uups!", "alert.unexpected.title": "Uups!",
"announcement.announcement": "Announcement", "announcement.announcement": "Annunziu",
"autosuggest_hashtag.per_week": "{count} per settimana", "autosuggest_hashtag.per_week": "{count} per settimana",
"boost_modal.combo": "Pudete appughjà nant'à {combo} per saltà quessa a prussima volta", "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.", "bundle_column_error.body": "C'hè statu un prublemu caricandu st'elementu.",

View file

@ -2319,6 +2319,10 @@
"defaultMessage": "Bookmark", "defaultMessage": "Bookmark",
"id": "status.bookmark" "id": "status.bookmark"
}, },
{
"defaultMessage": "More",
"id": "status.more"
},
{ {
"defaultMessage": "Mute @{name}", "defaultMessage": "Mute @{name}",
"id": "status.mute" "id": "status.mute"

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "Περιορισμός συχνότητας", "alert.rate_limited.title": "Περιορισμός συχνότητας",
"alert.unexpected.message": "Προέκυψε απροσδόκητο σφάλμα.", "alert.unexpected.message": "Προέκυψε απροσδόκητο σφάλμα.",
"alert.unexpected.title": "Εεπ!", "alert.unexpected.title": "Εεπ!",
"announcement.announcement": "Announcement", "announcement.announcement": "Ανακοίνωση",
"autosuggest_hashtag.per_week": "{count} ανα εβδομάδα", "autosuggest_hashtag.per_week": "{count} ανα εβδομάδα",
"boost_modal.combo": "Μπορείς να πατήσεις {combo} για να το προσπεράσεις αυτό την επόμενη φορά", "boost_modal.combo": "Μπορείς να πατήσεις {combo} για να το προσπεράσεις αυτό την επόμενη φορά",
"bundle_column_error.body": "Κάτι πήγε στραβά ενώ φορτωνόταν αυτό το στοιχείο.", "bundle_column_error.body": "Κάτι πήγε στραβά ενώ φορτωνόταν αυτό το στοιχείο.",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "Tarifa limitada", "alert.rate_limited.title": "Tarifa limitada",
"alert.unexpected.message": "Ocurrió un error.", "alert.unexpected.message": "Ocurrió un error.",
"alert.unexpected.title": "¡Epa!", "alert.unexpected.title": "¡Epa!",
"announcement.announcement": "Announcement", "announcement.announcement": "Anuncio",
"autosuggest_hashtag.per_week": "{count} por semana", "autosuggest_hashtag.per_week": "{count} por semana",
"boost_modal.combo": "Podés hacer clic en {combo} para saltar esto la próxima vez", "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.", "bundle_column_error.body": "Algo salió mal al cargar este componente.",

View file

@ -40,10 +40,10 @@
"account.unmute": "Dejar de silenciar a @{name}", "account.unmute": "Dejar de silenciar a @{name}",
"account.unmute_notifications": "Dejar de silenciar las notificaciones de @{name}", "account.unmute_notifications": "Dejar de silenciar las notificaciones de @{name}",
"alert.rate_limited.message": "Por favor reintente después de {retry_time, time, medium}.", "alert.rate_limited.message": "Por favor reintente después de {retry_time, time, medium}.",
"alert.rate_limited.title": "Tasa limitada", "alert.rate_limited.title": "Tarifa limitada",
"alert.unexpected.message": "Hubo un error inesperado.", "alert.unexpected.message": "Hubo un error inesperado.",
"alert.unexpected.title": "¡Ups!", "alert.unexpected.title": "¡Ups!",
"announcement.announcement": "Announcement", "announcement.announcement": "Anuncio",
"autosuggest_hashtag.per_week": "{count} por semana", "autosuggest_hashtag.per_week": "{count} por semana",
"boost_modal.combo": "Puedes hacer clic en {combo} para saltar este aviso la próxima vez", "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.", "bundle_column_error.body": "Algo salió mal al cargar este componente.",
@ -54,7 +54,7 @@
"bundle_modal_error.retry": "Inténtalo de nuevo", "bundle_modal_error.retry": "Inténtalo de nuevo",
"column.blocks": "Usuarios bloqueados", "column.blocks": "Usuarios bloqueados",
"column.bookmarks": "Marcadores", "column.bookmarks": "Marcadores",
"column.community": "Cronología local", "column.community": "Línea de tiempo local",
"column.direct": "Mensajes directos", "column.direct": "Mensajes directos",
"column.directory": "Buscar perfiles", "column.directory": "Buscar perfiles",
"column.domain_blocks": "Dominios ocultados", "column.domain_blocks": "Dominios ocultados",
@ -65,7 +65,7 @@
"column.mutes": "Usuarios silenciados", "column.mutes": "Usuarios silenciados",
"column.notifications": "Notificaciones", "column.notifications": "Notificaciones",
"column.pins": "Toots fijados", "column.pins": "Toots fijados",
"column.public": "Cronología federada", "column.public": "Línea de tiempo federada",
"column_back_button.label": "Atrás", "column_back_button.label": "Atrás",
"column_header.hide_settings": "Ocultar configuración", "column_header.hide_settings": "Ocultar configuración",
"column_header.moveLeft_settings": "Mover columna a la izquierda", "column_header.moveLeft_settings": "Mover columna a la izquierda",
@ -87,7 +87,7 @@
"compose_form.poll.remove_option": "Eliminar esta opción", "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_multiple": "Modificar encuesta para permitir múltiples opciones",
"compose_form.poll.switch_to_single": "Modificar encuesta para permitir una única opción", "compose_form.poll.switch_to_single": "Modificar encuesta para permitir una única opción",
"compose_form.publish": "Ipotxa", "compose_form.publish": "Tootear",
"compose_form.publish_loud": "{publish}!", "compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Marcar multimedia como sensible", "compose_form.sensitive.hide": "Marcar multimedia como sensible",
"compose_form.sensitive.marked": "Material marcado como sensible", "compose_form.sensitive.marked": "Material marcado como sensible",
@ -104,7 +104,7 @@
"confirmations.delete_list.confirm": "Eliminar", "confirmations.delete_list.confirm": "Eliminar",
"confirmations.delete_list.message": "¿Seguro que quieres borrar esta lista permanentemente?", "confirmations.delete_list.message": "¿Seguro que quieres borrar esta lista permanentemente?",
"confirmations.domain_block.confirm": "Ocultar dominio entero", "confirmations.domain_block.confirm": "Ocultar dominio entero",
"confirmations.domain_block.message": "¿Seguro de que quieres bloquear al dominio {domain} entero? En general unos cuantos bloqueos y silenciados concretos es suficiente y preferible.\nNo podrás ver contenido de ese dominio en ninguna de las cronologías públicas o tus notificaciones. Tus seguidoras de ese dominio serán borradas.", "confirmations.domain_block.message": "¿Seguro de que quieres bloquear al dominio {domain} entero? En general unos cuantos bloqueos y silenciados concretos es suficiente y preferible.",
"confirmations.logout.confirm": "Cerrar sesión", "confirmations.logout.confirm": "Cerrar sesión",
"confirmations.logout.message": "¿Estás seguro de querer cerrar la sesión?", "confirmations.logout.message": "¿Estás seguro de querer cerrar la sesión?",
"confirmations.mute.confirm": "Silenciar", "confirmations.mute.confirm": "Silenciar",
@ -143,23 +143,23 @@
"empty_column.account_timeline": "¡No hay toots aquí!", "empty_column.account_timeline": "¡No hay toots aquí!",
"empty_column.account_unavailable": "Perfil no disponible", "empty_column.account_unavailable": "Perfil no disponible",
"empty_column.blocks": "Aún no has bloqueado a ningún usuario.", "empty_column.blocks": "Aún no has bloqueado a ningún usuario.",
"empty_column.bookmarked_statuses": "Aún no tienes ninguna barritada guardada como marcador. Cuando guardes una, se mostrará aquí.", "empty_column.bookmarked_statuses": "Aún no tienes ningún toot guardado como marcador. Cuando guardes uno, se mostrará aquí.",
"empty_column.community": "La cronología local está vacía. ¡Escribe algo para empezar la fiesta!", "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.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.", "empty_column.domain_blocks": "Todavía no hay dominios ocultos.",
"empty_column.favourited_statuses": "Aún no tienes toots preferidos. Cuando marques uno como favorito, aparecerá aquí.", "empty_column.favourited_statuses": "Aún no tienes toots preferidos. Cuando marques uno como favorito, aparecerá aquí.",
"empty_column.favourites": "Nadie ha marcado este toot como preferido. Cuando alguien lo haga, aparecerá aquí.", "empty_column.favourites": "Nadie ha marcado este toot como preferido. Cuando alguien lo haga, aparecerá aquí.",
"empty_column.follow_requests": "No tienes ninguna petición de seguidor. Cuando recibas una, se mostrará aquí.", "empty_column.follow_requests": "No tienes ninguna petición de seguidor. Cuando recibas una, se mostrará aquí.",
"empty_column.hashtag": "No hay nada en esta etiqueta aún.", "empty_column.hashtag": "No hay nada en este hashtag aún.",
"empty_column.home": "No estás siguiendo a nadie aún. Visita {public} o haz búsquedas para empezar y conocer gente nueva.", "empty_column.home": "No estás siguiendo a nadie aún. Visita {public} o haz búsquedas para empezar y conocer gente nueva.",
"empty_column.home.public_timeline": "la cronología pública", "empty_column.home.public_timeline": "la línea de tiempo pública",
"empty_column.list": "No hay nada en esta lista aún. Cuando miembros de esta lista publiquen nuevos estatus, estos aparecerán qui.", "empty_column.list": "No hay nada en esta lista aún. Cuando miembros de esta lista publiquen nuevos estatus, estos aparecerán qui.",
"empty_column.lists": "No tienes ninguna lista. cuando crees una, se mostrará aquí.", "empty_column.lists": "No tienes ninguna lista. cuando crees una, se mostrará aquí.",
"empty_column.mutes": "Aún no has silenciado a ningún usuario.", "empty_column.mutes": "Aún no has silenciado a ningún usuario.",
"empty_column.notifications": "No tienes ninguna notificación aún. Interactúa con otros para empezar una conversación.", "empty_column.notifications": "No tienes ninguna notificación aún. Interactúa con otros para empezar una conversación.",
"empty_column.public": "¡No hay nada aquí! Escribe algo públicamente, o sigue usuarios de otras instancias manualmente para llenarlo", "empty_column.public": "¡No hay nada aquí! Escribe algo públicamente, o sigue usuarios de otras instancias manualmente para llenarlo",
"error.unexpected_crash.explanation": "Debido a un error en nuestro código o a un problema de compatibilidad con el navegador, esta página no se ha podido mostrar correctamente.", "error.unexpected_crash.explanation": "Debido a un error en nuestro código o a un problema de compatibilidad con el navegador, esta página no se ha podido mostrar correctamente.",
"error.unexpected_crash.next_steps": "Intenta actualizar la página. Si eso no ayuda, es posible que puedas usar Mastodonte a través de otro navegador o aplicación nativa.", "error.unexpected_crash.next_steps": "Intenta actualizar la página. Si eso no ayuda, es posible que puedas usar Mastodon a través de otro navegador o aplicación nativa.",
"errors.unexpected_crash.copy_stacktrace": "Copiar el seguimiento de pila en el portapapeles", "errors.unexpected_crash.copy_stacktrace": "Copiar el seguimiento de pila en el portapapeles",
"errors.unexpected_crash.report_issue": "Informar de un problema/error", "errors.unexpected_crash.report_issue": "Informar de un problema/error",
"follow_request.authorize": "Autorizar", "follow_request.authorize": "Autorizar",
@ -169,18 +169,18 @@
"getting_started.documentation": "Documentación", "getting_started.documentation": "Documentación",
"getting_started.heading": "Primeros pasos", "getting_started.heading": "Primeros pasos",
"getting_started.invite": "Invitar usuarios", "getting_started.invite": "Invitar usuarios",
"getting_started.open_source_notice": "Mastodonte es un Programa Libre y de Código Abierto - Plica/Foss -. Puedes contribuir o reportar errores en {github}.", "getting_started.open_source_notice": "Mastodon es software libre. Puedes contribuir o reportar errores en {github}.",
"getting_started.security": "Seguridad", "getting_started.security": "Seguridad",
"getting_started.terms": "Términos de servicio", "getting_started.terms": "Términos de servicio",
"hashtag.column_header.tag_mode.all": "y {additional}", "hashtag.column_header.tag_mode.all": "y {additional}",
"hashtag.column_header.tag_mode.any": "o {additional}", "hashtag.column_header.tag_mode.any": "o {additional}",
"hashtag.column_header.tag_mode.none": "sin {additional}", "hashtag.column_header.tag_mode.none": "sin {additional}",
"hashtag.column_settings.select.no_options_message": "No se encontraron sugerencias", "hashtag.column_settings.select.no_options_message": "No se encontraron sugerencias",
"hashtag.column_settings.select.placeholder": "Introduzca etiquetas…", "hashtag.column_settings.select.placeholder": "Introduzca hashtags…",
"hashtag.column_settings.tag_mode.all": "Todos estos", "hashtag.column_settings.tag_mode.all": "Cualquiera de estos",
"hashtag.column_settings.tag_mode.any": "Cualquiera de estos", "hashtag.column_settings.tag_mode.any": "Cualquiera de estos",
"hashtag.column_settings.tag_mode.none": "Ninguno de estos", "hashtag.column_settings.tag_mode.none": "Ninguno de estos",
"hashtag.column_settings.tag_toggle": "Incluya etiquetas adicionales para esta columna", "hashtag.column_settings.tag_toggle": "Include additional tags in this column",
"home.column_settings.basic": "Básico", "home.column_settings.basic": "Básico",
"home.column_settings.show_reblogs": "Mostrar retoots", "home.column_settings.show_reblogs": "Mostrar retoots",
"home.column_settings.show_replies": "Mostrar respuestas", "home.column_settings.show_replies": "Mostrar respuestas",
@ -193,7 +193,7 @@
"introduction.federation.home.headline": "Inicio", "introduction.federation.home.headline": "Inicio",
"introduction.federation.home.text": "Los posts de personas que sigues aparecerán en tu cronología. ¡Puedes seguir a cualquiera en cualquier servidor!", "introduction.federation.home.text": "Los posts de personas que sigues aparecerán en tu cronología. ¡Puedes seguir a cualquiera en cualquier servidor!",
"introduction.federation.local.headline": "Local", "introduction.federation.local.headline": "Local",
"introduction.federation.local.text": "Los mensajes públicos de personas en el mismo servidor que aparecerán en la cronología local.", "introduction.federation.local.text": "Los posts públicos de personas en el mismo servidor que aparecerán en la cronología local.",
"introduction.interactions.action": "¡Terminar tutorial!", "introduction.interactions.action": "¡Terminar tutorial!",
"introduction.interactions.favourite.headline": "Favorito", "introduction.interactions.favourite.headline": "Favorito",
"introduction.interactions.favourite.text": "Puedes guardar un toot para más tarde, y hacer saber al autor que te gustó, dándole a favorito.", "introduction.interactions.favourite.text": "Puedes guardar un toot para más tarde, y hacer saber al autor que te gustó, dándole a favorito.",
@ -215,12 +215,12 @@
"keyboard_shortcuts.enter": "abrir estado", "keyboard_shortcuts.enter": "abrir estado",
"keyboard_shortcuts.favourite": "añadir a favoritos", "keyboard_shortcuts.favourite": "añadir a favoritos",
"keyboard_shortcuts.favourites": "abrir la lista de favoritos", "keyboard_shortcuts.favourites": "abrir la lista de favoritos",
"keyboard_shortcuts.federated": "abrir la cronología federada", "keyboard_shortcuts.federated": "abrir el timeline federado",
"keyboard_shortcuts.heading": "Keyboard Shortcuts", "keyboard_shortcuts.heading": "Keyboard Shortcuts",
"keyboard_shortcuts.home": "abrir la cronología propia", "keyboard_shortcuts.home": "abrir el timeline propio",
"keyboard_shortcuts.hotkey": "Tecla caliente", "keyboard_shortcuts.hotkey": "Tecla caliente",
"keyboard_shortcuts.legend": "para mostrar esta leyenda", "keyboard_shortcuts.legend": "para mostrar esta leyenda",
"keyboard_shortcuts.local": "abrir la cronología local", "keyboard_shortcuts.local": "abrir el timeline local",
"keyboard_shortcuts.mention": "para mencionar al autor", "keyboard_shortcuts.mention": "para mencionar al autor",
"keyboard_shortcuts.muted": "abrir la lista de usuarios silenciados", "keyboard_shortcuts.muted": "abrir la lista de usuarios silenciados",
"keyboard_shortcuts.my_profile": "abrir tu perfil", "keyboard_shortcuts.my_profile": "abrir tu perfil",
@ -259,7 +259,7 @@
"navigation_bar.apps": "Aplicaciones móviles", "navigation_bar.apps": "Aplicaciones móviles",
"navigation_bar.blocks": "Usuarios bloqueados", "navigation_bar.blocks": "Usuarios bloqueados",
"navigation_bar.bookmarks": "Marcadores", "navigation_bar.bookmarks": "Marcadores",
"navigation_bar.community_timeline": "Cronología local", "navigation_bar.community_timeline": "Historia local",
"navigation_bar.compose": "Escribir un nuevo toot", "navigation_bar.compose": "Escribir un nuevo toot",
"navigation_bar.direct": "Mensajes directos", "navigation_bar.direct": "Mensajes directos",
"navigation_bar.discover": "Descubrir", "navigation_bar.discover": "Descubrir",
@ -277,7 +277,7 @@
"navigation_bar.personal": "Personal", "navigation_bar.personal": "Personal",
"navigation_bar.pins": "Toots fijados", "navigation_bar.pins": "Toots fijados",
"navigation_bar.preferences": "Preferencias", "navigation_bar.preferences": "Preferencias",
"navigation_bar.public_timeline": "Cronología federada", "navigation_bar.public_timeline": "Historia federada",
"navigation_bar.security": "Seguridad", "navigation_bar.security": "Seguridad",
"notification.favourite": "{name} marcó tu estado como favorito", "notification.favourite": "{name} marcó tu estado como favorito",
"notification.follow": "{name} te empezó a seguir", "notification.follow": "{name} te empezó a seguir",
@ -321,9 +321,9 @@
"privacy.direct.short": "Directo", "privacy.direct.short": "Directo",
"privacy.private.long": "Sólo mostrar a seguidores", "privacy.private.long": "Sólo mostrar a seguidores",
"privacy.private.short": "Privado", "privacy.private.short": "Privado",
"privacy.public.long": "Mostrar en la cronología federada", "privacy.public.long": "Mostrar en la historia federada",
"privacy.public.short": "Público", "privacy.public.short": "Público",
"privacy.unlisted.long": "No mostrar en la cronología federada", "privacy.unlisted.long": "No mostrar en la historia federada",
"privacy.unlisted.short": "No listado", "privacy.unlisted.short": "No listado",
"refresh": "Actualizar", "refresh": "Actualizar",
"regeneration_indicator.label": "Cargando…", "regeneration_indicator.label": "Cargando…",
@ -345,12 +345,12 @@
"search_popout.tips.full_text": "Búsquedas de texto recuperan posts que has escrito, marcado como favoritos, retooteado o en los que has sido mencionado, así como usuarios, nombres y hashtags.", "search_popout.tips.full_text": "Búsquedas de texto recuperan posts que has escrito, marcado como favoritos, retooteado o en los que has sido mencionado, así como usuarios, nombres y hashtags.",
"search_popout.tips.hashtag": "etiqueta", "search_popout.tips.hashtag": "etiqueta",
"search_popout.tips.status": "estado", "search_popout.tips.status": "estado",
"search_popout.tips.text": "El texto simple devuelve correspondencias de nombre, persona usuaria y etiqueta", "search_popout.tips.text": "El texto simple devuelve correspondencias de nombre, usuario y hashtag",
"search_popout.tips.user": "usuario", "search_popout.tips.user": "usuario",
"search_results.accounts": "Gente", "search_results.accounts": "Gente",
"search_results.hashtags": "Etiquetas", "search_results.hashtags": "Etiquetas",
"search_results.statuses": "Toots", "search_results.statuses": "Toots",
"search_results.statuses_fts_disabled": "Buscar bramidos por su contenido no está disponible en este servidor de Mastodonte.", "search_results.statuses_fts_disabled": "Buscar toots por su contenido no está disponible en este servidor de Mastodon.",
"search_results.total": "{count, number} {count, plural, one {resultado} other {resultados}}", "search_results.total": "{count, number} {count, plural, one {resultado} other {resultados}}",
"status.admin_account": "Abrir interfaz de moderación para @{name}", "status.admin_account": "Abrir interfaz de moderación para @{name}",
"status.admin_status": "Abrir este estado en la interfaz de moderación", "status.admin_status": "Abrir este estado en la interfaz de moderación",
@ -396,7 +396,7 @@
"status.unpin": "Dejar de fijar", "status.unpin": "Dejar de fijar",
"suggestions.dismiss": "Descartar sugerencia", "suggestions.dismiss": "Descartar sugerencia",
"suggestions.header": "Es posible que te interese…", "suggestions.header": "Es posible que te interese…",
"tabs_bar.federated_timeline": "Federada", "tabs_bar.federated_timeline": "Federado",
"tabs_bar.home": "Inicio", "tabs_bar.home": "Inicio",
"tabs_bar.local_timeline": "Local", "tabs_bar.local_timeline": "Local",
"tabs_bar.notifications": "Notificaciones", "tabs_bar.notifications": "Notificaciones",
@ -408,7 +408,7 @@
"time_remaining.seconds": "{number, plural, one {# segundo restante} other {# segundos restantes}}", "time_remaining.seconds": "{number, plural, one {# segundo restante} other {# segundos restantes}}",
"trends.count_by_accounts": "{count} {rawCount, plural, one {persona} other {personas}} hablando", "trends.count_by_accounts": "{count} {rawCount, plural, one {persona} other {personas}} hablando",
"trends.trending_now": "Tendencia ahora", "trends.trending_now": "Tendencia ahora",
"ui.beforeunload": "Tu borrador se perderá si sales de Mastodonte.", "ui.beforeunload": "Tu borrador se perderá si sales de Mastodon.",
"upload_area.title": "Arrastra y suelta para subir", "upload_area.title": "Arrastra y suelta para subir",
"upload_button.label": "Subir multimedia (JPEG, PNG, GIF, WebM, MP4, MOV)", "upload_button.label": "Subir multimedia (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Límite de subida de archivos excedido.", "upload_error.limit": "Límite de subida de archivos excedido.",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "Abiadura mugatua", "alert.rate_limited.title": "Abiadura mugatua",
"alert.unexpected.message": "Ustekabeko errore bat gertatu da.", "alert.unexpected.message": "Ustekabeko errore bat gertatu da.",
"alert.unexpected.title": "Ene!", "alert.unexpected.title": "Ene!",
"announcement.announcement": "Announcement", "announcement.announcement": "Iragarpena",
"autosuggest_hashtag.per_week": "{count} asteko", "autosuggest_hashtag.per_week": "{count} asteko",
"boost_modal.combo": "{combo} sakatu dezakezu hurrengoan hau saltatzeko", "boost_modal.combo": "{combo} sakatu dezakezu hurrengoan hau saltatzeko",
"bundle_column_error.body": "Zerbait okerra gertatu da osagai hau kargatzean.", "bundle_column_error.body": "Zerbait okerra gertatu da osagai hau kargatzean.",

View file

@ -1,48 +1,48 @@
{ {
"account.add_or_remove_from_list": "افزودن یا برداشتن از فهرست", "account.add_or_remove_from_list": "افزودن یا برداشتن از فهرستها",
"account.badges.bot": "ربات", "account.badges.bot": "ربات",
"account.badges.group": "گروه", "account.badges.group": "گروه",
"account.block": "مسدودسازی @{name}", "account.block": "مسدودسازی @{name}",
"account.block_domain": "پنهان‌سازی همه چیز از سرور {domain}", "account.block_domain": "نهفتن همه چیز از {domain}",
"account.blocked": "مسدود", "account.blocked": "مسدود",
"account.cancel_follow_request": "لغو درخواست پیگیری", "account.cancel_follow_request": "لغو درخواست پیگیری",
"account.direct": "پیام خصوصی به @{name}", "account.direct": "پیام خصوصی به @{name}",
"account.domain_blocked": "دامنه نهفته", "account.domain_blocked": "دامنهٔ نهفته",
"account.edit_profile": "ویرایش نمایه", "account.edit_profile": "ویرایش نمایه",
"account.endorse": "معرّفی در نمایه", "account.endorse": "معرّفی در نمایه",
"account.follow": "پیگیری", "account.follow": "پی بگیرید",
"account.followers": "پی‌گیران", "account.followers": "پی‌گیران",
"account.followers.empty": "هنوز کسی پیگیر این کاربر نیست.", "account.followers.empty": "هنوز کسی پیگیر این کاربر نیست.",
"account.follows": "پی می‌گیرد", "account.follows": "پی می‌گیرد",
"account.follows.empty": "این کاربر هنوز پیگیر کسی نیست.", "account.follows.empty": "این کاربر هنوز پیگیر کسی نیست.",
"account.follows_you": "پیگیرتان", "account.follows_you": "پیگیر شماست",
"account.hide_reblogs": "نهفتن تقویت‌های @{name}", "account.hide_reblogs": "نهفتن بازبوق‌های @{name}",
"account.last_status": "آخرین فعالیت", "account.last_status": "آخرین فعالیت",
"account.link_verified_on": "مالکیت این پیوند در {date} بررسی شد", "account.link_verified_on": "مالکیت این پیوند در {date} بررسی شد",
"account.locked_info": "این حساب خصوصی است. صاحبش تصمیم می‌گیرد که چه کسی بتواند پیگیرش باشد.", "account.locked_info": "این حساب خصوصی است. صاحبش تصمیم می‌گیرد که چه کسی بتواند پیگیرش باشد.",
"account.media": "رسانه", "account.media": "رسانه",
"account.mention": "اشاره به @{name}", "account.mention": "نام‌بردن از @{name}",
"account.moved_to": "{name} منتقل شده به:", "account.moved_to": "{name} منتقل شده به:",
"account.mute": "خموشی @{name}", "account.mute": "خموشی @{name}",
"account.mute_notifications": "خموشی آگاهیها از @{name}", "account.mute_notifications": "خموشی اعلانها از @{name}",
"account.muted": "خموش", "account.muted": "خموش",
"account.never_active": "هرگز", "account.never_active": "هرگز",
"account.posts": "بوقها", "account.posts": "نوشتهها",
"account.posts_with_replies": "بوقها و پاسخ‌ها", "account.posts_with_replies": "نوشتهها و پاسخ‌ها",
"account.report": "گزارش @{name}", "account.report": "گزارش @{name}",
"account.requested": "منتظر پذیرش. کلیک برای لغو درخواست پی‌گیری", "account.requested": "منتظر پذیرش. برای لغو درخواست پی‌گیری کلیک کنید",
"account.share": "هم‌رسانی نمایهٔ @{name}", "account.share": "هم‌رسانی نمایهٔ @{name}",
"account.show_reblogs": "نمایش تقویت‌های @{name}", "account.show_reblogs": "نمایش بازبوق‌های @{name}",
"account.unblock": "رفع انسداد @{name}", "account.unblock": "رفع انسداد @{name}",
"account.unblock_domain": "رفع نهفتن {domain}", "account.unblock_domain": "رفع نهفتن {domain}",
"account.unendorse": "معرّفی نکردن در نمایه", "account.unendorse": "معرّفی نکردن در نمایه",
"account.unfollow": "ناپی‌گیری", "account.unfollow": "پایان پیگیری",
"account.unmute": "رفع خموشی @{name}", "account.unmute": "رفع خموشی @{name}",
"account.unmute_notifications": "رفع خموشی آگاهیها از @{name}", "account.unmute_notifications": "رفع خموشی اعلانها از @{name}",
"alert.rate_limited.message": "لطفاً پس از {retry_time, time, medium} دوباره بیازمایید.", "alert.rate_limited.message": "لطفاً پس از {retry_time, time, medium} دوباره بیازمایید.",
"alert.rate_limited.title": "محدود شده", "alert.rate_limited.title": "محدودیت تعداد",
"alert.unexpected.message": "خطایی غیرمنتظره رخ داد.", "alert.unexpected.message": "خطایی غیرمنتظره رخ داد.",
"alert.unexpected.title": "وای!", "alert.unexpected.title": "ای وای!",
"announcement.announcement": "Announcement", "announcement.announcement": "Announcement",
"autosuggest_hashtag.per_week": "{count} در هفته", "autosuggest_hashtag.per_week": "{count} در هفته",
"boost_modal.combo": "دکمهٔ {combo} را بزنید تا دیگر این را نبینید", "boost_modal.combo": "دکمهٔ {combo} را بزنید تا دیگر این را نبینید",
@ -50,37 +50,37 @@
"bundle_column_error.retry": "تلاش دوباره", "bundle_column_error.retry": "تلاش دوباره",
"bundle_column_error.title": "خطای شبکه", "bundle_column_error.title": "خطای شبکه",
"bundle_modal_error.close": "بستن", "bundle_modal_error.close": "بستن",
"bundle_modal_error.message": "هنگام بار کردن این بخش خطایی رخ داد.", "bundle_modal_error.message": "هنگام بازکردن این بخش خطایی رخ داد.",
"bundle_modal_error.retry": "تلاش دوباره", "bundle_modal_error.retry": "تلاش دوباره",
"column.blocks": "کاربران مسدود", "column.blocks": "کاربران مسدود",
"column.bookmarks": "نشانک‌ها", "column.bookmarks": "نشانک‌ها",
"column.community": "خط زمانی محلّی", "column.community": "نوشته‌های محلی",
"column.direct": "پیام‌های خصوصی", "column.direct": "پیام‌های خصوصی",
"column.directory": "مرور نمایه‌ها", "column.directory": "مرور نمایه‌ها",
"column.domain_blocks": "دامنه‌های نهفته", "column.domain_blocks": "دامنه‌های نهفته",
"column.favourites": "برگزیده‌ها", "column.favourites": "پسندیده‌ها",
"column.follow_requests": "درخواست‌های پیگیری", "column.follow_requests": "درخواست‌های پیگیری",
"column.home": "خانه", "column.home": "خانه",
"column.lists": "فهرست‌ها", "column.lists": "فهرست‌ها",
"column.mutes": "کاربران خموش", "column.mutes": "کاربران خموش",
"column.notifications": "آگاهیها", "column.notifications": "اعلانها",
"column.pins": "بوق‌های سنجاق‌شده", "column.pins": "بوق‌های ثابت",
"column.public": "خط‌زمانی عمومی", "column.public": "نوشته‌های همه‌جا",
"column_back_button.label": "بازگشت", "column_back_button.label": "بازگشت",
"column_header.hide_settings": "نهفتن تنظیمات", "column_header.hide_settings": "نهفتن تنظیمات",
"column_header.moveLeft_settings": "انتقال ستون به راست", "column_header.moveLeft_settings": "انتقال ستون به راست",
"column_header.moveRight_settings": "انتقال ستون به چپ", "column_header.moveRight_settings": "انتقال ستون به چپ",
"column_header.pin": "سنجاق", "column_header.pin": "ثابت‌کردن",
"column_header.show_settings": "نمایش تنظیمات", "column_header.show_settings": "نمایش تنظیمات",
"column_header.unpin": "برداشتن سنجاق", "column_header.unpin": "رهاکردن",
"column_subheading.settings": "تنظیمات", "column_subheading.settings": "تنظیمات",
"community.column_settings.media_only": "فقط رسانه", "community.column_settings.media_only": "فقط رسانه",
"compose_form.direct_message_warning": "این بوق تنها به کاربران اشاره‌شده فرستاده خواهد شد.", "compose_form.direct_message_warning": "این بوق تنها به کاربرانی که از آن‌ها نام برده شده فرستاده خواهد شد.",
"compose_form.direct_message_warning_learn_more": "بیشتر بدانید", "compose_form.direct_message_warning_learn_more": "بیشتر بدانید",
"compose_form.hashtag_warning": "از آن‌جا که این بوق فهرست‌نشده است، در نتایج جست‌وجوی هشتگ‌ها پیدا نخواهد شد. تنها بوق‌های عمومی را می‌توان با جست‌وجوی هشتگ یافت.", "compose_form.hashtag_warning": "از آن‌جا که این بوق فهرست‌نشده است، در نتایج جست‌وجوی هشتگ‌ها پیدا نخواهد شد. تنها بوق‌های عمومی را می‌توان با جست‌وجوی هشتگ یافت.",
"compose_form.lock_disclaimer": "حسابتان {locked} نیست. هر کسی می‌تواند پیگیرتان شده و فرسته‌های ویژهٔ پیگیرانتان را ببیند.", "compose_form.lock_disclaimer": "حسابتان {locked} نیست. هر کسی می‌تواند پیگیرتان شده و فرسته‌های ویژهٔ پیگیرانتان را ببیند.",
"compose_form.lock_disclaimer.lock": "قفل", "compose_form.lock_disclaimer.lock": "قفل",
"compose_form.placeholder": "چی تو سرته؟", "compose_form.placeholder": "تازه چه خبر؟",
"compose_form.poll.add_option": "افزودن گزینه", "compose_form.poll.add_option": "افزودن گزینه",
"compose_form.poll.duration": "مدت نظرسنجی", "compose_form.poll.duration": "مدت نظرسنجی",
"compose_form.poll.option_placeholder": "گزینهٔ {number}", "compose_form.poll.option_placeholder": "گزینهٔ {number}",
@ -89,81 +89,81 @@
"compose_form.poll.switch_to_single": "تبدیل به نظرسنجی تک‌گزینه‌ای", "compose_form.poll.switch_to_single": "تبدیل به نظرسنجی تک‌گزینه‌ای",
"compose_form.publish": "بوق", "compose_form.publish": "بوق",
"compose_form.publish_loud": "{publish}!", "compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "علامت‌گذاری رسانه به عنوان حساس", "compose_form.sensitive.hide": "علامت‌گذاری به عنوان حساس",
"compose_form.sensitive.marked": "رسانه به عنوان حساس علامت‌گذاری شده", "compose_form.sensitive.marked": "رسانه به عنوان حساس علامت‌گذاری شده",
"compose_form.sensitive.unmarked": "رسانه به عنوان حساس علامت‌گذاری نشده", "compose_form.sensitive.unmarked": "رسانه به عنوان حساس علامت‌گذاری نشده",
"compose_form.spoiler.marked": "نوشته پشت هشدار پنهان است", "compose_form.spoiler.marked": "نوشته پشت هشدار پنهان است",
"compose_form.spoiler.unmarked": "نوشته پنهان نیست", "compose_form.spoiler.unmarked": "نوشته پنهان نیست",
"compose_form.spoiler_placeholder": "هشدارتان را این‌جا بنویسید", "compose_form.spoiler_placeholder": "هشدارتان را این‌جا بنویسید",
"confirmation_modal.cancel": "لغو", "confirmation_modal.cancel": "بی‌خیال",
"confirmations.block.block_and_report": "انسداد و گزارش", "confirmations.block.block_and_report": "مسدودسازی و گزارش",
"confirmations.block.confirm": "انسداد", "confirmations.block.confirm": "مسدود کن",
"confirmations.block.message": "مطمئنید که می‌خواهید {name} را مسدود کنید؟", "confirmations.block.message": "مطمئنید که می‌خواهید {name} را مسدود کنید؟",
"confirmations.delete.confirm": "حذف", "confirmations.delete.confirm": "پاک کن",
"confirmations.delete.message": "مطمئنید می‌خواهید این وضعیت را حذف کنید؟", "confirmations.delete.message": "آیا مطمئنید که می‌خواهید این بوق را پاک کنید؟",
"confirmations.delete_list.confirm": "حذف", "confirmations.delete_list.confirm": "پاک کن",
"confirmations.delete_list.message": "مطمئنید می‌خواهید این فهرست را برای همیشه پاک کنید؟", "confirmations.delete_list.message": "مطمئنید می‌خواهید این فهرست را برای همیشه پاک کنید؟",
"confirmations.domain_block.confirm": "نهفتن تمام دامنه", "confirmations.domain_block.confirm": "نهفتن تمام دامنه",
"confirmations.domain_block.message": "آیا جدی جدی می‌خواهید تمام دامنهٔ {domain} را مسدود کنید؟ در بیش‌تر موارد انسداد یا خموش کردن چند حساب خاص کافی بوده و توصیه می‌شود. پس از این کار شما هیچ نوشته‌ای را از این دامنه در خط‌زمانی‌های عمومی یا آگاهی‌هایتان نخواهید دید. پیگیرانتان از این دامنه هم برداشته خواهند شد.", "confirmations.domain_block.message": "آیا جدی جدی می‌خواهید تمام دامنهٔ {domain} را مسدود کنید؟ در بیشتر موارد مسدودسازی یا خموشیدن چند حساب خاص کافی است و توصیه می‌شود. پس از این کار شما هیچ نوشته‌ای را از این دامنه در فهرست نوشته‌های عمومی یا اعلان‌هایتان نخواهید دید. پیگیرانتان از این دامنه هم حذف خواهند شد.",
"confirmations.logout.confirm": "خروج", "confirmations.logout.confirm": "خروج",
"confirmations.logout.message": "مطمئنید می‌خواهید خارج شوید؟", "confirmations.logout.message": "مطمئنید می‌خواهید خارج شوید؟",
"confirmations.mute.confirm": "خموشی", "confirmations.mute.confirm": "خموشی",
"confirmations.mute.explanation": "این کار فرسته‌هایشان و فرسته‌هایی که به آنان اشاره می‌کند را پنهان می‌کند، ولی همچنان اجازه دارند فرسته‌هایتان را دیده و دنبالتان کنند.", "confirmations.mute.explanation": "این کار فرسته‌های آن‌ها و فرسته‌هایی را که از آن‌ها نام برده پنهان می‌کند، ولی آن‌ها همچنان اجازه دارند فرسته‌های شما را ببینند و شما را پی بگیرند.",
"confirmations.mute.message": "مطمئنید می‌خواهید {name} را خموش کنید؟", "confirmations.mute.message": "مطمئنید می‌خواهید {name} را بخموشید؟",
"confirmations.redraft.confirm": "حذف و بازنویسی", "confirmations.redraft.confirm": "پاک‌کردن و بازنویسی",
"confirmations.redraft.message": "مطمئنید می‌خواهید این وضعیت را حذف کرده و از نو بنویسید؟ با این کار تقویت‌ها و برگزیدن‌هایش از دست رفته و پاسخ‌ها به فرستهٔ اصلی یتیم می‌شوند.", "confirmations.redraft.message": "مطمئنید که می‌خواهید این بوق را پاک کنید و از نو بنویسید؟ با این کار بازبوق‌ها و پسندهای آن از دست می‌رود و پاسخ‌ها به آن بی‌مرجع می‌شود.",
"confirmations.reply.confirm": "پاسخ", "confirmations.reply.confirm": "پاسخ",
"confirmations.reply.message": "اگر الان پاسخ دهید، پیامی که در حال نوشتنش بودید پاک خواهد شد. می‌خواهید ادامه دهید؟", "confirmations.reply.message": "اگر الان پاسخ دهید، چیزی که در حال نوشتنش بودید پاک خواهد شد. می‌خواهید ادامه دهید؟",
"confirmations.unfollow.confirm": "ناپی‌گیری", "confirmations.unfollow.confirm": "پایان پیگیری",
"confirmations.unfollow.message": "مطمئنید می‌خواهید پیگیری {name} را پایان دهید؟", "confirmations.unfollow.message": "مطمئنید که می‌خواهید به پیگیری از {name} پایان دهید؟",
"conversation.delete": "حذف گفت‌وگو", "conversation.delete": "حذف گفتگو",
"conversation.mark_as_read": "علامت‌گذاری به عنوان خوانده شده", "conversation.mark_as_read": "علامت‌گذاری به عنوان خوانده شده",
"conversation.open": "دیدن گفت‌وگو", "conversation.open": "دیدن گفتگو",
"conversation.with": "با {names}", "conversation.with": "با {names}",
"directory.federated": "از کارسازهای شناخته‌شده", "directory.federated": "از کارسازهای شناخته‌شده",
"directory.local": "فقط از {domain}", "directory.local": "تنها از {domain}",
"directory.new_arrivals": "تازه‌واردان", "directory.new_arrivals": "تازه‌واردان",
"directory.recently_active": "کاربران فعال اخیر", "directory.recently_active": "کاربران فعال اخیر",
"embed.instructions": ا رونوشت از کد زیر، این وضعیت را روی پایگاهتان جاگذاری کنید.", "embed.instructions": رای جاگذاری این بوق در سایت خودتان، کد زیر را کپی کنید.",
"embed.preview": "این گونه دیده خواهد شد:", "embed.preview": "این گونه دیده خواهد شد:",
"emoji_button.activity": "فعالیت", "emoji_button.activity": "فعالیت",
"emoji_button.custom": "سفارشی", "emoji_button.custom": "سفارشی",
"emoji_button.flags": "پرچم‌ها", "emoji_button.flags": "پرچم‌ها",
"emoji_button.food": "غذا و نوشیدنی", "emoji_button.food": "غذا و نوشیدنی",
"emoji_button.label": "درج اموجی", "emoji_button.label": "افزودن شکلک",
"emoji_button.nature": "طبیعت", "emoji_button.nature": "طبیعت",
"emoji_button.not_found": "اموجی‌ای وجود ندارد!! (╯°□°)╯︵ ┻━┻‬", "emoji_button.not_found": "این‌جا شکلکی نیست!! (╯°□°)╯︵ ┻━┻",
"emoji_button.objects": "اشیا", "emoji_button.objects": "اشیا",
"emoji_button.people": "مردم", "emoji_button.people": "مردم",
"emoji_button.recent": "پراستفاده", "emoji_button.recent": "پراستفاده",
"emoji_button.search": "جست‌وجو…", "emoji_button.search": "جستجو...",
"emoji_button.search_results": "نتایج جست‌وجو", "emoji_button.search_results": "نتایج جستجو",
"emoji_button.symbols": "نمادها", "emoji_button.symbols": "نمادها",
"emoji_button.travel": "سفر و مکان", "emoji_button.travel": "سفر و مکان",
"empty_column.account_timeline": "هیچ بوقی این‌جا نیست!", "empty_column.account_timeline": "هیچ بوقی این‌جا نیست!",
"empty_column.account_unavailable": "نمایهٔ ناموجود", "empty_column.account_unavailable": "نمایهٔ ناموجود",
"empty_column.blocks": "هنوز کسی را مسدود نکرده‌اید.", "empty_column.blocks": "هنوز کسی را مسدود نکرده‌اید.",
"empty_column.bookmarked_statuses": "هنوز هیچ بوق نشان‌شده‌ای ندارید. وقتی بوقی را نشان‌کنید، این‌جا دیده خواهد شد.", "empty_column.bookmarked_statuses": "هنوز هیچ بوق نشان‌شده‌ای ندارید. وقتی بوقی را نشان‌کنید، این‌جا دیده خواهد شد.",
"empty_column.community": "خط‌زمانی محلّی خالی است. چیزی به صورت عمومی نوشته تا چرخش بچرخد!", "empty_column.community": "فهرست نوشته‌های محلی خالی است. چیزی بنویسید تا چرخش بچرخد!",
"empty_column.direct": "هنوز هیچ پیغام مستقیمی ندارید. هروقت چنین پیغامی بگیرید یا بفرستید این‌جا نمایش خواهد یافت.", "empty_column.direct": "هنوز هیچ پیام مستقیمی ندارید. هروقت چنین پیامی بگیرید یا بفرستید این‌جا نمایش خواهد یافت.",
"empty_column.domain_blocks": "هنوز هیچ دامنه‌ای پنهان نشده است.", "empty_column.domain_blocks": "هنوز هیچ دامنه‌ای پنهان نشده است.",
"empty_column.favourited_statuses": "هنوز هیچ بوق برگزیده‌ای ندارید. وقتی بوقی را برگزینید، این‌جا دیده خواهد شد.", "empty_column.favourited_statuses": "شما هنوز هیچ بوقی را نپسندیده‌اید. وقتی بوقی را بپسندید، این‌جا نمایش خواهد یافت.",
"empty_column.favourites": "هنوز کسی این بوق را برنگزیده. وقتی کسی این کار را بکند، این‌جا دیده خواهد شد.", "empty_column.favourites": "هنوز هیچ کسی این بوق را نپسندیده است. وقتی کسی آن را بپسندد، نامش این‌جا نمایش خواهد یافت.",
"empty_column.follow_requests": "هنوز هیچ درخواست پیگیری‌ای ندارید. وقتی چنین درخواستی بگیرید، این‌جا دیده خواهد شد.", "empty_column.follow_requests": "شما هنوز هیچ درخواست پیگیری‌ای ندارید. وقتی چنین درخواستی بگیرید، این‌جا نمایش خواهد یافت.",
"empty_column.hashtag": "هنوز هیچ چیزی در این برچسب نیست.", "empty_column.hashtag": "هنوز هیچ چیزی در این برچسب نیست.",
"empty_column.home": "خط‌زمانی خانگیتان خالیست! برای شروع و دیدن دیگر کاربران، از جست‌وجو استفاده کرده یا {public} را ببینید.", "empty_column.home": "فهرست خانگی شما خالی است! {public} را ببینید یا چیزی را جستجو کنید تا کاربران دیگر را ببینید.",
"empty_column.home.public_timeline": "خط‌زمانی عمومی", "empty_column.home.public_timeline": "فهرست نوشته‌های همه‌جا",
"empty_column.list": "هنوز چیزی در این فهرست وجود ندارد. هنگامی که اعضای این فهرست وضعیت جدیدی بفرستند، این‌جا ظاهر خواهد شد.", "empty_column.list": "در این فهرست هنوز چیزی نیست. وقتی اعضای این فهرست چیزی بفرستند، این‌جا ظاهر خواهد شد.",
"empty_column.lists": "هنوز هیچ فهرستی ندارید. هنگامی که فهرستی بسازید، این‌جا دیده خواهد شد.", "empty_column.lists": "هنوز هیچ فهرستی ندارید. هنگامی که فهرستی بسازید، این‌جا دیده خواهد شد.",
"empty_column.mutes": "هنوز هیچ کاربری را خموش نکرده‌اید.", "empty_column.mutes": "هنوز هیچ کاربری را خموش نکرده‌اید.",
"empty_column.notifications": "هنوز هیچ آگاهی‌ای ندارید. به دیگران واکنش نشان داده تا گفت‌وگو آغاز شود.", "empty_column.notifications": "هنوز هیچ اعلانی ندارید. به دیگران واکنش نشان دهید تا گفتگو آغاز شود.",
"empty_column.public": "هیچ‌چیز این‌جا نیست! پرای پر کردنش چیزی به صورت عمومی نوشته یا کاربران دیگر کارسازها را پی بگیرید", "empty_column.public": "این‌جا هنوز چیزی نیست! خودتان چیزی بنویسید یا کاربران کارسازهای دیگر را پی بگیرید تا این‌جا پر شود",
"error.unexpected_crash.explanation": "به خاطر مشکلی در کدمان یا یک ناسازگاری مرورگر، این صفحه نتوانست به درستی نمایش یابد.", "error.unexpected_crash.explanation": "به خاطر اشکالی در کدهای ما یا ناسازگاری با مرورگر شما، این صفحه به درستی نمایش نیافت.",
"error.unexpected_crash.next_steps": "تازه‌سازی صفحه را بیازمایید. اگر کمکی نکرد، شاید بتوانید از طریق مرورگری دیگر یا کارهٔ بومی از ماستودون استفاده کنید.", "error.unexpected_crash.next_steps": "لطفاً صفحه را دوباره باز کنید. اگر کمکی نکرد، شاید همچنان بتوانید با ماستدون از راه یک مرورگر دیگر یا با یکی از اپ‌های آن کار کنید.",
"errors.unexpected_crash.copy_stacktrace": "رونوشت از جزئیات اشکال", "errors.unexpected_crash.copy_stacktrace": "رونوشت از جزئیات اشکال",
"errors.unexpected_crash.report_issue": "گزارش مشکل", "errors.unexpected_crash.report_issue": "گزارش مشکل",
"follow_request.authorize": "اجازه دادن", "follow_request.authorize": "اجازه دهید",
"follow_request.reject": "رد کردن", "follow_request.reject": "رد کنید",
"getting_started.developers": "توسعه‌دهندگان", "getting_started.developers": "توسعه‌دهندگان",
"getting_started.directory": "فهرست گزیدهٔ کاربران", "getting_started.directory": "فهرست گزیدهٔ کاربران",
"getting_started.documentation": "مستندات", "getting_started.documentation": "مستندات",
@ -182,65 +182,65 @@
"hashtag.column_settings.tag_mode.none": "هیچ‌کدام از این‌ها", "hashtag.column_settings.tag_mode.none": "هیچ‌کدام از این‌ها",
"hashtag.column_settings.tag_toggle": "افزودن برچسب‌هایی بیشتر به این ستون", "hashtag.column_settings.tag_toggle": "افزودن برچسب‌هایی بیشتر به این ستون",
"home.column_settings.basic": "پایه‌ای", "home.column_settings.basic": "پایه‌ای",
"home.column_settings.show_reblogs": "نمایش تقویتها", "home.column_settings.show_reblogs": "نمایش بازبوقها",
"home.column_settings.show_replies": "نمایش پاسخ‌ها", "home.column_settings.show_replies": "نمایش پاسخ‌ها",
"intervals.full.days": "{number, plural, one {# روز} other {# روز}}", "intervals.full.days": "{number, plural, one {# روز} other {# روز}}",
"intervals.full.hours": "{number, plural, one {# ساعت} other {# ساعت}}", "intervals.full.hours": "{number, plural, one {# ساعت} other {# ساعت}}",
"intervals.full.minutes": "{number, plural, one {# دقیقه} other {# دقیقه}}", "intervals.full.minutes": "{number, plural, one {# دقیقه} other {# دقیقه}}",
"introduction.federation.action": "بعدی", "introduction.federation.action": "بعدی",
"introduction.federation.federated.headline": "همگانی", "introduction.federation.federated.headline": "همگانی",
"introduction.federation.federated.text": "نوشته‌های عمومی دیگر کارسازها در خط‌زمانی همگانی طاهر خواهند شد.", "introduction.federation.federated.text": "نوشته‌های عمومی کارسازهای دیگر در این فهرست نمایش می‌یابند.",
"introduction.federation.home.headline": "خانه", "introduction.federation.home.headline": "خانه",
"introduction.federation.home.text": "فرسته‌ها از افرادی که دنبالشان می‌کنید در خوراک خانه‌تان ظاهر خواهند شد. می‌توانید هر کسی را روی هر کارسازی پی‌بگیرید!", "introduction.federation.home.text": "فرسته‌های کسانی که شما آن‌ها را پی می‌گیرید این‌جا نمایش می‌یابند. شما می‌توانید هر کسی را روی هر کارسازی پی بگیرید!",
"introduction.federation.local.headline": "محلّی", "introduction.federation.local.headline": "محلّی",
"introduction.federation.local.text": "نوشته‌های عمومی افرادی که روی همان کارساز خودتان هستند در خط زمانی محلّی ظاهر خواهند شد.", "introduction.federation.local.text": "فرسته‌های عمومی کسانی که روی کارساز شما هستند در فهرست نوشته‌های محلی نمایش می‌یابند.",
"introduction.interactions.action": "پایان خودآموز!", "introduction.interactions.action": "پایان خودآموز!",
"introduction.interactions.favourite.headline": "برگزیدن", "introduction.interactions.favourite.headline": "پسندیدن",
"introduction.interactions.favourite.text": "می‌توانید بوقی را برای بعد ذخیره کنید و با برگزیدنش، بگذارید نویسنده بداند که پسندیدیش.", "introduction.interactions.favourite.text": "با پسندیدن یک بوق، شما آن را برای آینده ذخیره می‌کنید و به نویسنده می‌گویید که از بوقش خوشتان آمده.",
"introduction.interactions.reblog.headline": "تقویت", "introduction.interactions.reblog.headline": "بازبوقیدن",
"introduction.interactions.reblog.text": "با تقویت بوق‌های دیگران، می‌توانید آن‌ها را با پی‌گیرانتان هم‌رسانی کنید.", "introduction.interactions.reblog.text": "اگر بخواهید نوشته‌ای را با پیگیران خودتان به اشتراک بگذارید، آن را بازمی‌بوقید.",
"introduction.interactions.reply.headline": "پاسخ", "introduction.interactions.reply.headline": "پاسخ",
"introduction.interactions.reply.text": "می‌توانید به بوق‌های خودتان و دیگران پاسخ دهید، تا در یک گفت‌وگو به هم زنجیر شوند.", "introduction.interactions.reply.text": "می‌توانید به بوق‌های خودتان و دیگران پاسخ دهید، تا در یک گفتگو به هم زنجیر شوند.",
"introduction.welcome.action": "بزن بریم!", "introduction.welcome.action": "بزن بریم!",
"introduction.welcome.headline": "نخستین گام‌ها", "introduction.welcome.headline": "نخستین گام‌ها",
"introduction.welcome.text": "به دنیای شبکه‌های اجتماعی غیرمتمرکز خوش آمدید! به زودی می‌توانید نوشته‌هایتان را منتشر کرده و با دوستانتان روی دامنهٔ وسیعی از کارسازها حرف بزنید. ولی این کارساز، {domain}، با بقیه فرق دارد، چرا که میزبان نمایهٔ شماست، پس نامش را به خاطر بسپارید.", "introduction.welcome.text": "به دنیای شبکه‌های اجتماعی غیرمتمرکز خوش آمدید! به زودی می‌توانید نوشته‌هایتان را منتشر کرده و با دوستانتان روی دامنهٔ وسیعی از کارسازها حرف بزنید. ولی این کارساز، {domain}، با بقیه فرق دارد، چرا که میزبان نمایهٔ شماست، پس نامش را به خاطر بسپارید.",
"keyboard_shortcuts.back": "برای بازگشت", "keyboard_shortcuts.back": "برای بازگشت",
"keyboard_shortcuts.blocked": "برای گشودن فهرست کاربران خموش", "keyboard_shortcuts.blocked": "برای گشودن فهرست کاربران خموش",
"keyboard_shortcuts.boost": "برای تقویت", "keyboard_shortcuts.boost": "برای بازبوقیدن",
"keyboard_shortcuts.column": "برای تمرکز روی وضعیتی در یکی از ستون‌ها", "keyboard_shortcuts.column": "برای تمرکز روی یک بوق در یکی از ستون‌ها",
"keyboard_shortcuts.compose": "برای تمرکز روی محیط نوشتن", "keyboard_shortcuts.compose": "برای تمرکز روی محیط نوشتن",
"keyboard_shortcuts.description": "توضیح", "keyboard_shortcuts.description": "توضیح",
"keyboard_shortcuts.direct": "برای گشودن ستون پیام‌های خصوصی", "keyboard_shortcuts.direct": "برای گشودن ستون پیغام‌های مستقیم",
"keyboard_shortcuts.down": "برای پایین رفتن در فهرست", "keyboard_shortcuts.down": "برای پایین رفتن در فهرست",
"keyboard_shortcuts.enter": "برای گشودن وضعیت", "keyboard_shortcuts.enter": "برای گشودن نوشته",
"keyboard_shortcuts.favourite": "برای برگزیدن", "keyboard_shortcuts.favourite": "برای پسندیدن",
"keyboard_shortcuts.favourites": "برای گشودن فهرست برگزیده‌ها", "keyboard_shortcuts.favourites": "برای گشودن فهرست پسندیده‌ها",
"keyboard_shortcuts.federated": "برای گشودن خط‌زمانی همگانی", "keyboard_shortcuts.federated": "برای گشودن فهرست نوشته‌های همه‌جا",
"keyboard_shortcuts.heading": "میان‌برهای صفحه‌کلید", "keyboard_shortcuts.heading": "میان‌برهای صفحه‌کلید",
"keyboard_shortcuts.home": "برای گشودن خط‌زمانی خانه", "keyboard_shortcuts.home": "برای گشودن ستون اصلی پیگیری‌ها",
"keyboard_shortcuts.hotkey": "میان‌بر", "keyboard_shortcuts.hotkey": "میان‌بر",
"keyboard_shortcuts.legend": "برای نمایش این راهنما", "keyboard_shortcuts.legend": "برای نمایش این راهنما",
"keyboard_shortcuts.local": "برای گشودن خط‌زمانی محلّی", "keyboard_shortcuts.local": "برای گشودن فهرست نوشته‌های محلی",
"keyboard_shortcuts.mention": "برای اشاره به نویسنده", "keyboard_shortcuts.mention": "برای نام‌بردن از نویسنده",
"keyboard_shortcuts.muted": "برای گشودن فهرست کاربران خموش", "keyboard_shortcuts.muted": "برای گشودن فهرست کاربران خموش",
"keyboard_shortcuts.my_profile": "برای گشودن نمایه‌تان", "keyboard_shortcuts.my_profile": "برای گشودن نمایه‌تان",
"keyboard_shortcuts.notifications": "برای گشودن ستون آگاهیها", "keyboard_shortcuts.notifications": "برای گشودن ستون اعلانها",
"keyboard_shortcuts.open_media": "برای باز کردن رسانه", "keyboard_shortcuts.open_media": "برای باز کردن رسانه",
"keyboard_shortcuts.pinned": "برای گشودن فهرست بوق‌های سنجاق‌شده", "keyboard_shortcuts.pinned": "برای گشودن فهرست بوق‌های ثابت",
"keyboard_shortcuts.profile": "برای گشودن نمایهٔ نویسنده", "keyboard_shortcuts.profile": "برای گشودن نمایهٔ نویسنده",
"keyboard_shortcuts.reply": "برای پاسخ", "keyboard_shortcuts.reply": "برای پاسخ",
"keyboard_shortcuts.requests": "برای گشودن فهرست درخواست‌های پیگیری", "keyboard_shortcuts.requests": "برای گشودن فهرست درخواست‌های پیگیری",
"keyboard_shortcuts.search": "برای تمرکز روی جست‌وجو", "keyboard_shortcuts.search": "برای تمرکز روی جستجو",
"keyboard_shortcuts.start": "برای گشودن ستون «آغاز کنید»", "keyboard_shortcuts.start": "برای گشودن ستون «آغاز کنید»",
"keyboard_shortcuts.toggle_hidden": "برای نمایش/نهفتن نوشتهٔ پشت هشدار محتوا", "keyboard_shortcuts.toggle_hidden": "برای نمایش/نهفتن نوشتهٔ پشت هشدار محتوا",
"keyboard_shortcuts.toggle_sensitivity": "برای نمایش/نهفتن رسانه", "keyboard_shortcuts.toggle_sensitivity": "برای نمایش/نهفتن رسانه",
"keyboard_shortcuts.toot": "برای آغاز یک بوق تازه", "keyboard_shortcuts.toot": "برای آغاز یک بوق تازه",
"keyboard_shortcuts.unfocus": "برای برداشتن تمرکز از نوشتن/جست‌وجو", "keyboard_shortcuts.unfocus": "برای برداشتن تمرکز از نوشتن/جستجو",
"keyboard_shortcuts.up": "برای بالا رفتن در فهرست", "keyboard_shortcuts.up": "برای بالا رفتن در فهرست",
"lightbox.close": "بستن", "lightbox.close": "بستن",
"lightbox.next": "بعدی", "lightbox.next": "بعدی",
"lightbox.previous": "پیشین", "lightbox.previous": "قبلی",
"lightbox.view_context": "نمایش متن", "lightbox.view_context": "نمایش گفتگو",
"lists.account.add": "افزودن به فهرست", "lists.account.add": "افزودن به فهرست",
"lists.account.remove": "برداشتن از فهرست", "lists.account.remove": "برداشتن از فهرست",
"lists.delete": "حذف فهرست", "lists.delete": "حذف فهرست",
@ -248,100 +248,100 @@
"lists.edit.submit": "تغییر عنوان", "lists.edit.submit": "تغییر عنوان",
"lists.new.create": "افزودن فهرست", "lists.new.create": "افزودن فهرست",
"lists.new.title_placeholder": "عنوان فهرست تازه", "lists.new.title_placeholder": "عنوان فهرست تازه",
"lists.search": "جست‌وجو بین افرادی که پی می‌گیرید", "lists.search": "بین کسانی که پی می‌گیرید بگردید",
"lists.subheading": "فهرست‌هایتان", "lists.subheading": "فهرست‌های شما",
"load_pending": "{count, plural, one {# مورد تازه} other {# مورد تازه}}", "load_pending": "{count, plural, one {# مورد تازه} other {# مورد تازه}}",
"loading_indicator.label": "در حال بار کردن…", "loading_indicator.label": "بارگیری...",
"media_gallery.toggle_visible": "تغییر وضعیت نمایانی", "media_gallery.toggle_visible": "تغییر پیدایی",
"missing_indicator.label": "پیدا نشد", "missing_indicator.label": "پیدا نشد",
"missing_indicator.sublabel": "این منبع پیدا نشد", "missing_indicator.sublabel": "این منبع پیدا نشد",
"mute_modal.hide_notifications": "نهفتن آگاهی‌ها از این کاربر؟", "mute_modal.hide_notifications": "اعلان‌های این کاربر پنهان شود؟",
"navigation_bar.apps": "کاره‌های همراه", "navigation_bar.apps": "اپ‌های موبایل",
"navigation_bar.blocks": "کاربران مسدود", "navigation_bar.blocks": "کاربران مسدودشده",
"navigation_bar.bookmarks": "نشانک‌ها", "navigation_bar.bookmarks": "نشانک‌ها",
"navigation_bar.community_timeline": "خط‌زمانی محلّی", "navigation_bar.community_timeline": "نوشته‌های محلی",
"navigation_bar.compose": "نوشتن بوق تازه", "navigation_bar.compose": "نوشتن بوق تازه",
"navigation_bar.direct": "پیام‌های خصوصی", "navigation_bar.direct": "پیام‌های مستقیم",
"navigation_bar.discover": "کشف", "navigation_bar.discover": "گشت و گذار",
"navigation_bar.domain_blocks": "دامنه‌های نهفته", "navigation_bar.domain_blocks": "دامنه‌های نهفته",
"navigation_bar.edit_profile": "ویرایش نمایه", "navigation_bar.edit_profile": "ویرایش نمایه",
"navigation_bar.favourites": "برگزیده‌ها", "navigation_bar.favourites": "پسندیده‌ها",
"navigation_bar.filters": "واژگان خموش", "navigation_bar.filters": "واژگان خموش",
"navigation_bar.follow_requests": "درخواست‌های پیگیری", "navigation_bar.follow_requests": "درخواست‌های پیگیری",
"navigation_bar.follows_and_followers": "پیگیری‌ها و پیگیران", "navigation_bar.follows_and_followers": "پیگیری‌ها و پیگیران",
"navigation_bar.info": "دربارهٔ این کارساز", "navigation_bar.info": "دربارهٔ این کارساز",
"navigation_bar.keyboard_shortcuts": "میان‌برها", "navigation_bar.keyboard_shortcuts": "میان‌برها",
"navigation_bar.lists": "فهرست‌ها", "navigation_bar.lists": "فهرست‌ها",
"navigation_bar.logout": "خروج", "navigation_bar.logout": "خروج",
"navigation_bar.mutes": "کاربران خموش", "navigation_bar.mutes": "کاربران خموشیده",
"navigation_bar.personal": "شخصی", "navigation_bar.personal": "شخصی",
"navigation_bar.pins": "بوق‌های سنجاق‌شده", "navigation_bar.pins": "بوق‌های ثابت",
"navigation_bar.preferences": "ترجیحات", "navigation_bar.preferences": "ترجیحات",
"navigation_bar.public_timeline": "خط‌زمانی همگانی", "navigation_bar.public_timeline": "نوشته‌های همه‌جا",
"navigation_bar.security": "امنیت", "navigation_bar.security": "امنیت",
"notification.favourite": "{name} وضعیتتان را برگزید", "notification.favourite": "{name} نوشتهٔ شما را پسندید",
"notification.follow": "{name} پیگیرتان شد", "notification.follow": "{name} پیگیرتان شد",
"notification.follow_request": "{name} درخواست پی‌گیریتان را داده است", "notification.follow_request": "{name} می‌خواهد پیگیر شما باشد",
"notification.mention": "{name} به شما اشاره کرد", "notification.mention": "{name} از شما نام برد",
"notification.own_poll": "نظرسنجیتان پایان یافت", "notification.own_poll": "نظرسنجی شما به پایان رسید",
"notification.poll": "نظرسنجی‌ای که در آن رأی دادید پایان یافته است", "notification.poll": "نظرسنجی‌ای که در آن رأی دادید به پایان رسیده است",
"notification.reblog": "{name} وضعیتتان را تقویت کرد", "notification.reblog": "{name} نوشتهٔ شما را بازبوقید",
"notifications.clear": "پاک‌سازی آگاهیها", "notifications.clear": "پاک‌کردن اعلانها",
"notifications.clear_confirmation": "مطمئنید می‌خواهید تمام آگاهی‌هایتان را برای همیشه پاک کنید؟", "notifications.clear_confirmation": "مطمئنید می‌خواهید همهٔ اعلان‌هایتان را برای همیشه پاک کنید؟",
"notifications.column_settings.alert": "آگاهی‌های میزکار", "notifications.column_settings.alert": "اعلان‌های میزکار",
"notifications.column_settings.favourite": "برگزیده‌ها:", "notifications.column_settings.favourite": "پسندیده‌ها:",
"notifications.column_settings.filter_bar.advanced": "نمایش تمام دسته‌ها", "notifications.column_settings.filter_bar.advanced": "نمایش همهٔ دسته‌ها",
"notifications.column_settings.filter_bar.category": "نوار پالایش سریع", "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": "پیگیران تازه:",
"notifications.column_settings.follow_request": "درخواست‌های جدید پی‌گیری:", "notifications.column_settings.follow_request": "درخواست‌های جدید پی‌گیری:",
"notifications.column_settings.mention": "اشارهها:", "notifications.column_settings.mention": "نام‌بردنها:",
"notifications.column_settings.poll": "نتایج نظرسنجی:", "notifications.column_settings.poll": "نتایج نظرسنجی:",
"notifications.column_settings.push": "ارسال آگاهی‌ها", "notifications.column_settings.push": "اعلان‌ها از سمت سرور",
"notifications.column_settings.reblog": "تقویتها:", "notifications.column_settings.reblog": "بازبوقها:",
"notifications.column_settings.show": "نمایش در ستون", "notifications.column_settings.show": "نمایش در ستون",
"notifications.column_settings.sound": "پخش صدا", "notifications.column_settings.sound": "پخش صدا",
"notifications.filter.all": "همه", "notifications.filter.all": "همه",
"notifications.filter.boosts": "تقویتها", "notifications.filter.boosts": "بازبوقها",
"notifications.filter.favourites": "برگزیده‌ها", "notifications.filter.favourites": "پسندها",
"notifications.filter.follows": "پیگیری‌ها", "notifications.filter.follows": "پیگیری‌ها",
"notifications.filter.mentions": "اشارهها", "notifications.filter.mentions": "نام‌بردنها",
"notifications.filter.polls": "نتایج نظرسنجی", "notifications.filter.polls": "نتایج نظرسنجی",
"notifications.group": "{count} آگاهی", "notifications.group": "{count} اعلان",
"poll.closed": "بسته‌شده", "poll.closed": "پایان‌یافته",
"poll.refresh": "نوسازی", "poll.refresh": "به‌روزرسانی",
"poll.total_people": "{count, plural, one {# نفر} other {# نفر}}", "poll.total_people": "{count, plural, one {# نفر} other {# نفر}}",
"poll.total_votes": "{count, plural, one {# رأی} other {# رأی}}", "poll.total_votes": "{count, plural, one {# رأی} other {# رأی}}",
"poll.vote": "رأی", "poll.vote": "رأی",
"poll.voted": "به این پاسخ رأی دادید", "poll.voted": "شما به این گزینه رأی دادید",
"poll_button.add_poll": "افزودن نظرسنجی", "poll_button.add_poll": "افزودن نظرسنجی",
"poll_button.remove_poll": "برداشتن نظرسنجی", "poll_button.remove_poll": "حذف نظرسنجی",
"privacy.change": "تنظیم محرمانگی وضعیت‌ها", "privacy.change": "تنظیم محرمانگی نوشته",
"privacy.direct.long": "ارسال فقط به کاربران اشاره‌شده", "privacy.direct.long": "تنها به کاربران نام‌برده‌شده نشان بده",
"privacy.direct.short": "خصوصی", "privacy.direct.short": "خصوصی",
"privacy.private.long": "ارسال فقط به پیگیران", "privacy.private.long": "تنها به پیگیران نشان بده",
"privacy.private.short": "فقط پی‌گیران", "privacy.private.short": "خصوصی",
"privacy.public.long": "ارسال به خط‌زمانی عمومی", "privacy.public.long": "نمایش در فهرست عمومی",
"privacy.public.short": "عمومی", "privacy.public.short": "عمومی",
"privacy.unlisted.long": "ارسال نکردن به خط‌زمانی عمومی", "privacy.unlisted.long": "عمومی، ولی فهرست نکن",
"privacy.unlisted.short": "فهرست‌نشده", "privacy.unlisted.short": "فهرست‌نشده",
"refresh": "نوسازی", "refresh": "به‌روزرسانی",
"regeneration_indicator.label": "در حال بار کردن…", "regeneration_indicator.label": "در حال باز شدن…",
"regeneration_indicator.sublabel": "خوراک خانه‌تان در حال آماده شدن است!", "regeneration_indicator.sublabel": "این فهرست دارد آماده می‌شود!",
"relative_time.days": "{number} روز", "relative_time.days": "{number} روز",
"relative_time.hours": "{number} ساعت", "relative_time.hours": "{number} ساعت",
"relative_time.just_now": "اکنون", "relative_time.just_now": "الان",
"relative_time.minutes": "{number} دقیقه", "relative_time.minutes": "{number} دقیقه",
"relative_time.seconds": "{number} ثانیه", "relative_time.seconds": "{number} ثانیه",
"reply_indicator.cancel": "لغو", "reply_indicator.cancel": "لغو",
"report.forward": "هدایت به {target}", "report.forward": "فرستادن به {target}",
"report.forward_hint": "این حساب از کارسازی دیگر است. رونوشتی ناشناس از گزارش به آن‌جا نیز فرستاده شود؟", "report.forward_hint": "این حساب در کارساز دیگری ثبت شده. آیا می‌خواهید رونوشتی ناشناس از این گزارش به آن‌جا هم فرستاده شود؟",
"report.hint": "این گزارش به مدیران کارسازتان فرستاده خواهد شد. می‌توانید دلیلی بر چرایی گزارش این حساب را در ادامه بنویسید:", "report.hint": "این گزارش به مدیران کارسازتان فرستاده خواهد شد. می‌توانید دلیل گزارش این حساب را در ادامه بنویسید:",
"report.placeholder": "توضیح اضافه", "report.placeholder": "توضیح اضافه",
"report.submit": "ثبت", "report.submit": "بفرست",
"report.target": "در حال گزارش {target}", "report.target": "در حال گزارش {target}",
"search.placeholder": "جست‌وجو", "search.placeholder": "جستجو",
"search_popout.search_format": "قالب جست‌وجوی پیشرفته", "search_popout.search_format": "راهنمای جستجوی پیشرفته",
"search_popout.tips.full_text": "جست‌وجوی متنی ساده وضعیت‌هایی که که نوشته، برگزیده، تقویت‌کرده یا در آن‌ها اشاره‌شده‌اید را به اضافهٔ نام‌های کاربری، نام‌های نمایشی و برچسب‌های مطابق برمی‌گرداند.", "search_popout.tips.full_text": "جست‌وجوی متنی ساده وضعیت‌هایی که که نوشته، برگزیده، تقویت‌کرده یا در آن‌ها اشاره‌شده‌اید را به اضافهٔ نام‌های کاربری، نام‌های نمایشی و برچسب‌های مطابق برمی‌گرداند.",
"search_popout.tips.hashtag": "برچسب", "search_popout.tips.hashtag": "برچسب",
"search_popout.tips.status": "وضعیت", "search_popout.tips.status": "وضعیت",

View file

@ -77,17 +77,17 @@
"community.column_settings.media_only": "Só multimedia", "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": "Este toot só será enviado ás usuarias mencionadas.",
"compose_form.direct_message_warning_learn_more": "Coñecer máis", "compose_form.direct_message_warning_learn_more": "Coñecer máis",
"compose_form.hashtag_warning": "Este toot non se amosará baixo cancelos (hashtags) porque non é público. Só os toots públicos poden ser procurados por cancelos.", "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}. Todos poden seguirche para ollar os teus toots só para seguidores.", "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": "bloqueado", "compose_form.lock_disclaimer.lock": "bloqueada",
"compose_form.placeholder": "En que estás a pensar?", "compose_form.placeholder": "Qué contas?",
"compose_form.poll.add_option": "Engadir unha opción", "compose_form.poll.add_option": "Engadir unha opción",
"compose_form.poll.duration": "Duración da enquisa", "compose_form.poll.duration": "Duración da enquisa",
"compose_form.poll.option_placeholder": "Opción {number}", "compose_form.poll.option_placeholder": "Opción {number}",
"compose_form.poll.remove_option": "Eliminar esta opción", "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_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.poll.switch_to_single": "Mudar a enquisa para permitir unha soa escolla",
"compose_form.publish": "Tootear", "compose_form.publish": "Toot",
"compose_form.publish_loud": "{publish}!", "compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Marcar coma contido multimedia sensíbel", "compose_form.sensitive.hide": "Marcar coma contido multimedia sensíbel",
"compose_form.sensitive.marked": "Contido multimedia marcado coma sensíbel", "compose_form.sensitive.marked": "Contido multimedia marcado coma sensíbel",
@ -104,16 +104,16 @@
"confirmations.delete_list.confirm": "Eliminar", "confirmations.delete_list.confirm": "Eliminar",
"confirmations.delete_list.message": "Tes a certeza de querer eliminar de xeito permanente esta listaxe?", "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.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. Os teus seguidores deste dominio serán eliminados.", "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.confirm": "Pechar sesión",
"confirmations.logout.message": "Desexas pechar a sesión?", "confirmations.logout.message": "Desexas pechar a sesión?",
"confirmations.mute.confirm": "Silenciar", "confirmations.mute.confirm": "Acalar",
"confirmations.mute.explanation": "Isto agochará as publicacións deles ou nas que os mencionen, mais permitirá que vexan as túas publicacións e sexan os teus seguidores.", "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 silenciar a {name}?", "confirmations.mute.message": "Tes a certeza de querer acalar a {name}?",
"confirmations.redraft.confirm": "Eliminar e reescribir", "confirmations.redraft.confirm": "Eliminar e reescribir",
"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.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.confirm": "Responder",
"confirmations.reply.message": "Respostar agora sobrescribirá a mensaxe que estás a compor. Tes a certeza de que queres continuar?", "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.confirm": "Deixar de seguir",
"confirmations.unfollow.message": "Desexas deixar de seguir a {name}?", "confirmations.unfollow.message": "Desexas deixar de seguir a {name}?",
"conversation.delete": "Eliminar conversa", "conversation.delete": "Eliminar conversa",
@ -122,10 +122,10 @@
"conversation.with": "Con {names}", "conversation.with": "Con {names}",
"directory.federated": "Do fediverso coñecido", "directory.federated": "Do fediverso coñecido",
"directory.local": "Só de {domain}", "directory.local": "Só de {domain}",
"directory.new_arrivals": "Recén chegados", "directory.new_arrivals": "Recén chegadas",
"directory.recently_active": "Activos recentemente", "directory.recently_active": "Activas recentemente",
"embed.instructions": "Engade este estado ó teu sitio web copiando o seguinte código.", "embed.instructions": "Engade este estado ó teu sitio web copiando o seguinte código.",
"embed.preview": "Así será amosado:", "embed.preview": "Así será mostrado:",
"emoji_button.activity": "Actividade", "emoji_button.activity": "Actividade",
"emoji_button.custom": "Personalizado", "emoji_button.custom": "Personalizado",
"emoji_button.flags": "Bandeiras", "emoji_button.flags": "Bandeiras",
@ -199,8 +199,8 @@
"introduction.interactions.favourite.text": "Podes gardar un toot para depois e facer saber ó autor que che gostou marcandoo coma favorito.", "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.headline": "Promover",
"introduction.interactions.reblog.text": "Podes compartir os toots doutras persoas coas túas seguidoras.", "introduction.interactions.reblog.text": "Podes compartir os toots doutras persoas coas túas seguidoras.",
"introduction.interactions.reply.headline": "Respostar", "introduction.interactions.reply.headline": "Responder",
"introduction.interactions.reply.text": "Podes respostar ós toots doutras persoas e ós teus propios, así ficarán encadeados nunha conversa.", "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.action": "Imos!",
"introduction.welcome.headline": "Primeiros pasos", "introduction.welcome.headline": "Primeiros pasos",
"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.", "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.",
@ -228,7 +228,7 @@
"keyboard_shortcuts.open_media": "para abrir o contido multimedia", "keyboard_shortcuts.open_media": "para abrir o contido multimedia",
"keyboard_shortcuts.pinned": "para abrir a listaxe dos toots fixados", "keyboard_shortcuts.pinned": "para abrir a listaxe dos toots fixados",
"keyboard_shortcuts.profile": "para abrir o perfil do autor", "keyboard_shortcuts.profile": "para abrir o perfil do autor",
"keyboard_shortcuts.reply": "para respostar", "keyboard_shortcuts.reply": "para responder",
"keyboard_shortcuts.requests": "para abrir a listaxe das peticións de seguimento", "keyboard_shortcuts.requests": "para abrir a listaxe das peticións de seguimento",
"keyboard_shortcuts.search": "para destacar a procura", "keyboard_shortcuts.search": "para destacar a procura",
"keyboard_shortcuts.start": "para abrir a columna dos \"primeiros pasos\"", "keyboard_shortcuts.start": "para abrir a columna dos \"primeiros pasos\"",
@ -381,8 +381,8 @@
"status.reblogs.empty": "Aínda ninguén promoveu este toot. Cando alguén o faga, amosarase aquí.", "status.reblogs.empty": "Aínda ninguén promoveu este toot. Cando alguén o faga, amosarase aquí.",
"status.redraft": "Eliminar e reescribir", "status.redraft": "Eliminar e reescribir",
"status.remove_bookmark": "Eliminar marcador", "status.remove_bookmark": "Eliminar marcador",
"status.reply": "Respostar", "status.reply": "Responder",
"status.replyAll": "Respostar ó fío", "status.replyAll": "Responder ó fío",
"status.report": "Denunciar @{name}", "status.report": "Denunciar @{name}",
"status.sensitive_warning": "Contido sensíbel", "status.sensitive_warning": "Contido sensíbel",
"status.share": "Compartir", "status.share": "Compartir",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "Forgalomkorlátozás", "alert.rate_limited.title": "Forgalomkorlátozás",
"alert.unexpected.message": "Váratlan hiba történt.", "alert.unexpected.message": "Váratlan hiba történt.",
"alert.unexpected.title": "Hoppá!", "alert.unexpected.title": "Hoppá!",
"announcement.announcement": "Announcement", "announcement.announcement": "Közlemény",
"autosuggest_hashtag.per_week": "{count}/hét", "autosuggest_hashtag.per_week": "{count}/hét",
"boost_modal.combo": "Hogy átugord ezt következő alkalommal, használd {combo}", "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.", "bundle_column_error.body": "Hiba történt a komponens betöltése közben.",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "制限に達しました", "alert.rate_limited.title": "制限に達しました",
"alert.unexpected.message": "不明なエラーが発生しました。", "alert.unexpected.message": "不明なエラーが発生しました。",
"alert.unexpected.title": "エラー!", "alert.unexpected.title": "エラー!",
"announcement.announcement": "告知", "announcement.announcement": "お知らせ",
"autosuggest_hashtag.per_week": "{count} 回 / 週", "autosuggest_hashtag.per_week": "{count} 回 / 週",
"boost_modal.combo": "次からは{combo}を押せばスキップできます", "boost_modal.combo": "次からは{combo}を押せばスキップできます",
"bundle_column_error.body": "コンポーネントの読み込み中に問題が発生しました。", "bundle_column_error.body": "コンポーネントの読み込み中に問題が発生しました。",
@ -89,8 +89,8 @@
"compose_form.poll.duration": "アンケート期間", "compose_form.poll.duration": "アンケート期間",
"compose_form.poll.option_placeholder": "項目 {number}", "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_multiple": "複数選択に変更",
"compose_form.poll.switch_to_single": "単一選択に変更", "compose_form.poll.switch_to_single": "単一選択に変更",
"compose_form.publish": "トゥート", "compose_form.publish": "トゥート",
"compose_form.publish_loud": "{publish}", "compose_form.publish_loud": "{publish}",
"compose_form.sensitive.hide": "メディアを閲覧注意にする", "compose_form.sensitive.hide": "メディアを閲覧注意にする",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "빈도 제한", "alert.rate_limited.title": "빈도 제한",
"alert.unexpected.message": "예측하지 못한 에러가 발생했습니다.", "alert.unexpected.message": "예측하지 못한 에러가 발생했습니다.",
"alert.unexpected.title": "앗!", "alert.unexpected.title": "앗!",
"announcement.announcement": "Announcement", "announcement.announcement": "공지사항",
"autosuggest_hashtag.per_week": "주간 {count}회", "autosuggest_hashtag.per_week": "주간 {count}회",
"boost_modal.combo": "{combo}를 누르면 다음부터 이 과정을 건너뛸 수 있습니다", "boost_modal.combo": "{combo}를 누르면 다음부터 이 과정을 건너뛸 수 있습니다",
"bundle_column_error.body": "컴포넌트를 불러오는 과정에서 문제가 발생했습니다.", "bundle_column_error.body": "컴포넌트를 불러오는 과정에서 문제가 발생했습니다.",

View file

@ -1,7 +1,7 @@
{ {
"account.add_or_remove_from_list": "Legg til eller tak vekk frå listene", "account.add_or_remove_from_list": "Legg til eller tak vekk frå listene",
"account.badges.bot": "Robot", "account.badges.bot": "Robot",
"account.badges.group": "Group", "account.badges.group": "Gruppe",
"account.block": "Blokker @{name}", "account.block": "Blokker @{name}",
"account.block_domain": "Skjul alt frå {domain}", "account.block_domain": "Skjul alt frå {domain}",
"account.blocked": "Blokkert", "account.blocked": "Blokkert",
@ -43,7 +43,7 @@
"alert.rate_limited.title": "Begrensa rate", "alert.rate_limited.title": "Begrensa rate",
"alert.unexpected.message": "Eit uventa problem oppstod.", "alert.unexpected.message": "Eit uventa problem oppstod.",
"alert.unexpected.title": "Oi sann!", "alert.unexpected.title": "Oi sann!",
"announcement.announcement": "Announcement", "announcement.announcement": "Kunngjøring",
"autosuggest_hashtag.per_week": "{count} per veke", "autosuggest_hashtag.per_week": "{count} per veke",
"boost_modal.combo": "Du kan trykkja {combo} for å hoppa over dette neste gong", "boost_modal.combo": "Du kan trykkja {combo} for å hoppa over dette neste gong",
"bundle_column_error.body": "Noko gjekk gale mens denne komponenten vart lasta ned.", "bundle_column_error.body": "Noko gjekk gale mens denne komponenten vart lasta ned.",
@ -85,8 +85,8 @@
"compose_form.poll.duration": "Varigskap for røysting", "compose_form.poll.duration": "Varigskap for røysting",
"compose_form.poll.option_placeholder": "Val {number}", "compose_form.poll.option_placeholder": "Val {number}",
"compose_form.poll.remove_option": "Ta vekk dette valet", "compose_form.poll.remove_option": "Ta vekk dette valet",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices", "compose_form.poll.switch_to_multiple": "Endre avstemning til å tillate flere valg",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice", "compose_form.poll.switch_to_single": "Endre avstemning til å tillate ett valg",
"compose_form.publish": "Tut", "compose_form.publish": "Tut",
"compose_form.publish_loud": "{publish}!", "compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Merk medium som sensitivt", "compose_form.sensitive.hide": "Merk medium som sensitivt",

View file

@ -1,7 +1,7 @@
{ {
"account.add_or_remove_from_list": "Legg til eller fjern fra lister", "account.add_or_remove_from_list": "Legg til eller fjern fra lister",
"account.badges.bot": "Bot", "account.badges.bot": "Bot",
"account.badges.group": "Group", "account.badges.group": "Gruppe",
"account.block": "Blokkér @{name}", "account.block": "Blokkér @{name}",
"account.block_domain": "Skjul alt fra {domain}", "account.block_domain": "Skjul alt fra {domain}",
"account.blocked": "Blokkert", "account.blocked": "Blokkert",
@ -43,7 +43,7 @@
"alert.rate_limited.title": "Hastighetsbegrenset", "alert.rate_limited.title": "Hastighetsbegrenset",
"alert.unexpected.message": "En uventet feil oppstod.", "alert.unexpected.message": "En uventet feil oppstod.",
"alert.unexpected.title": "Oops!", "alert.unexpected.title": "Oops!",
"announcement.announcement": "Announcement", "announcement.announcement": "Kunngjøring",
"autosuggest_hashtag.per_week": "{count} per uke", "autosuggest_hashtag.per_week": "{count} per uke",
"boost_modal.combo": "You kan trykke {combo} for å hoppe over dette neste gang", "boost_modal.combo": "You kan trykke {combo} for å hoppe over dette neste gang",
"bundle_column_error.body": "Noe gikk galt mens denne komponenten lastet.", "bundle_column_error.body": "Noe gikk galt mens denne komponenten lastet.",
@ -85,8 +85,8 @@
"compose_form.poll.duration": "Avstemningens varighet", "compose_form.poll.duration": "Avstemningens varighet",
"compose_form.poll.option_placeholder": "Valg {number}", "compose_form.poll.option_placeholder": "Valg {number}",
"compose_form.poll.remove_option": "Fjern dette valget", "compose_form.poll.remove_option": "Fjern dette valget",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices", "compose_form.poll.switch_to_multiple": "Endre avstemning til å tillate flere valg",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice", "compose_form.poll.switch_to_single": "Endre avstemning til å tillate ett valg",
"compose_form.publish": "Tut", "compose_form.publish": "Tut",
"compose_form.publish_loud": "{publish}!", "compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Merk media som sensitivt", "compose_form.sensitive.hide": "Merk media som sensitivt",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "Вы выполняете действие слишком часто", "alert.rate_limited.title": "Вы выполняете действие слишком часто",
"alert.unexpected.message": "Что-то пошло не так.", "alert.unexpected.message": "Что-то пошло не так.",
"alert.unexpected.title": "Ой!", "alert.unexpected.title": "Ой!",
"announcement.announcement": "Announcement", "announcement.announcement": "Объявление",
"autosuggest_hashtag.per_week": "{count} / неделю", "autosuggest_hashtag.per_week": "{count} / неделю",
"boost_modal.combo": "{combo}, чтобы пропустить это в следующий раз", "boost_modal.combo": "{combo}, чтобы пропустить это в следующий раз",
"bundle_column_error.body": "Что-то пошло не так при загрузке этого компонента.", "bundle_column_error.body": "Что-то пошло не так при загрузке этого компонента.",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "Tempo obmedzené", "alert.rate_limited.title": "Tempo obmedzené",
"alert.unexpected.message": "Vyskytla sa nečakaná chyba.", "alert.unexpected.message": "Vyskytla sa nečakaná chyba.",
"alert.unexpected.title": "Ups!", "alert.unexpected.title": "Ups!",
"announcement.announcement": "Announcement", "announcement.announcement": "Oboznámenie",
"autosuggest_hashtag.per_week": "{count} týždenne", "autosuggest_hashtag.per_week": "{count} týždenne",
"boost_modal.combo": "Nabudúce môžeš kliknúť {combo} pre preskočenie", "boost_modal.combo": "Nabudúce môžeš kliknúť {combo} pre preskočenie",
"bundle_column_error.body": "Pri načítaní tohto prvku nastala nejaká chyba.", "bundle_column_error.body": "Pri načítaní tohto prvku nastala nejaká chyba.",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "มีการจำกัดอัตรา", "alert.rate_limited.title": "มีการจำกัดอัตรา",
"alert.unexpected.message": "เกิดข้อผิดพลาดที่ไม่คาดคิด", "alert.unexpected.message": "เกิดข้อผิดพลาดที่ไม่คาดคิด",
"alert.unexpected.title": "อุปส์!", "alert.unexpected.title": "อุปส์!",
"announcement.announcement": "Announcement", "announcement.announcement": "ประกาศ",
"autosuggest_hashtag.per_week": "{count} ต่อสัปดาห์", "autosuggest_hashtag.per_week": "{count} ต่อสัปดาห์",
"boost_modal.combo": "คุณสามารถกด {combo} เพื่อข้ามสิ่งนี้ในครั้งถัดไป", "boost_modal.combo": "คุณสามารถกด {combo} เพื่อข้ามสิ่งนี้ในครั้งถัดไป",
"bundle_column_error.body": "มีบางอย่างผิดพลาดขณะโหลดส่วนประกอบนี้", "bundle_column_error.body": "มีบางอย่างผิดพลาดขณะโหลดส่วนประกอบนี้",

View file

@ -43,7 +43,7 @@
"alert.rate_limited.title": "Oran sınırlıdır", "alert.rate_limited.title": "Oran sınırlıdır",
"alert.unexpected.message": "Beklenmedik bir hata oluştu.", "alert.unexpected.message": "Beklenmedik bir hata oluştu.",
"alert.unexpected.title": "Hay aksi!", "alert.unexpected.title": "Hay aksi!",
"announcement.announcement": "Announcement", "announcement.announcement": "Duyuru",
"autosuggest_hashtag.per_week": "Haftada {count}", "autosuggest_hashtag.per_week": "Haftada {count}",
"boost_modal.combo": "Bir daha ki sefere {combo} tuşuna basabilirsiniz", "boost_modal.combo": "Bir daha ki sefere {combo} tuşuna basabilirsiniz",
"bundle_column_error.body": "Bu bileşen yüklenirken bir şeyler ters gitti.", "bundle_column_error.body": "Bu bileşen yüklenirken bir şeyler ters gitti.",

View file

@ -1,7 +1,7 @@
{ {
"account.add_or_remove_from_list": "Додати або видалити зі списків", "account.add_or_remove_from_list": "Додати або видалити зі списків",
"account.badges.bot": "Бот", "account.badges.bot": "Бот",
"account.badges.group": "Group", "account.badges.group": "Група",
"account.block": "Заблокувати @{name}", "account.block": "Заблокувати @{name}",
"account.block_domain": "Заглушити {domain}", "account.block_domain": "Заглушити {domain}",
"account.blocked": "Заблоковані", "account.blocked": "Заблоковані",
@ -43,7 +43,7 @@
"alert.rate_limited.title": "Швидкість обмежена", "alert.rate_limited.title": "Швидкість обмежена",
"alert.unexpected.message": "Трапилась неочікувана помилка.", "alert.unexpected.message": "Трапилась неочікувана помилка.",
"alert.unexpected.title": "Ой!", "alert.unexpected.title": "Ой!",
"announcement.announcement": "Announcement", "announcement.announcement": "Оголошення",
"autosuggest_hashtag.per_week": "{count} в тиждень", "autosuggest_hashtag.per_week": "{count} в тиждень",
"boost_modal.combo": "Ви можете натиснути {combo}, щоб пропустити це наступного разу", "boost_modal.combo": "Ви можете натиснути {combo}, щоб пропустити це наступного разу",
"bundle_column_error.body": "Щось пішло не так під час завантаження компоненту.", "bundle_column_error.body": "Щось пішло не так під час завантаження компоненту.",
@ -85,8 +85,8 @@
"compose_form.poll.duration": "Тривалість опитування", "compose_form.poll.duration": "Тривалість опитування",
"compose_form.poll.option_placeholder": "Варіант {number}", "compose_form.poll.option_placeholder": "Варіант {number}",
"compose_form.poll.remove_option": "Видалити цей варіант", "compose_form.poll.remove_option": "Видалити цей варіант",
"compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices", "compose_form.poll.switch_to_multiple": "Перемкнути у режим вибору декількох відповідей",
"compose_form.poll.switch_to_single": "Change poll to allow for a single choice", "compose_form.poll.switch_to_single": "Перемкнути у режим вибору однієї відповіді",
"compose_form.publish": "Дмухнути", "compose_form.publish": "Дмухнути",
"compose_form.publish_loud": "{publish}!", "compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.hide": "Позначити медіа як дражливе", "compose_form.sensitive.hide": "Позначити медіа як дражливе",
@ -225,7 +225,7 @@
"keyboard_shortcuts.muted": "відкрити список заглушених користувачів", "keyboard_shortcuts.muted": "відкрити список заглушених користувачів",
"keyboard_shortcuts.my_profile": "відкрити ваш профіль", "keyboard_shortcuts.my_profile": "відкрити ваш профіль",
"keyboard_shortcuts.notifications": "відкрити колонку сповіщень", "keyboard_shortcuts.notifications": "відкрити колонку сповіщень",
"keyboard_shortcuts.open_media": "to open media", "keyboard_shortcuts.open_media": "відкрити медіа",
"keyboard_shortcuts.pinned": "відкрити список закріплених дмухів", "keyboard_shortcuts.pinned": "відкрити список закріплених дмухів",
"keyboard_shortcuts.profile": "відкрити профіль автора", "keyboard_shortcuts.profile": "відкрити профіль автора",
"keyboard_shortcuts.reply": "відповісти", "keyboard_shortcuts.reply": "відповісти",

View file

@ -3,18 +3,20 @@ import {
ANNOUNCEMENTS_FETCH_SUCCESS, ANNOUNCEMENTS_FETCH_SUCCESS,
ANNOUNCEMENTS_FETCH_FAIL, ANNOUNCEMENTS_FETCH_FAIL,
ANNOUNCEMENTS_UPDATE, ANNOUNCEMENTS_UPDATE,
ANNOUNCEMENTS_DISMISS,
ANNOUNCEMENTS_REACTION_UPDATE, ANNOUNCEMENTS_REACTION_UPDATE,
ANNOUNCEMENTS_REACTION_ADD_REQUEST, ANNOUNCEMENTS_REACTION_ADD_REQUEST,
ANNOUNCEMENTS_REACTION_ADD_FAIL, ANNOUNCEMENTS_REACTION_ADD_FAIL,
ANNOUNCEMENTS_REACTION_REMOVE_REQUEST, ANNOUNCEMENTS_REACTION_REMOVE_REQUEST,
ANNOUNCEMENTS_REACTION_REMOVE_FAIL, ANNOUNCEMENTS_REACTION_REMOVE_FAIL,
ANNOUNCEMENTS_TOGGLE_SHOW,
} from '../actions/announcements'; } from '../actions/announcements';
import { Map as ImmutableMap, List as ImmutableList, fromJS } from 'immutable'; import { Map as ImmutableMap, List as ImmutableList, Set as ImmutableSet, fromJS } from 'immutable';
const initialState = ImmutableMap({ const initialState = ImmutableMap({
items: ImmutableList(), items: ImmutableList(),
isLoading: false, isLoading: false,
show: true,
unread: ImmutableSet(),
}); });
const updateReaction = (state, id, name, updater) => state.update('items', list => list.map(announcement => { const updateReaction = (state, id, name, updater) => state.update('items', list => list.map(announcement => {
@ -43,21 +45,35 @@ const addReaction = (state, id, name) => updateReaction(state, id, name, x => x.
const removeReaction = (state, id, name) => updateReaction(state, id, name, x => x.set('me', false).update('count', y => y - 1)); const removeReaction = (state, id, name) => updateReaction(state, id, name, x => x.set('me', false).update('count', y => y - 1));
const addUnread = (state, items) => {
if (state.get('show')) return state;
const newIds = ImmutableSet(items.map(x => x.get('id')));
const oldIds = ImmutableSet(state.get('items').map(x => x.get('id')));
return state.update('unread', unread => unread.union(newIds.subtract(oldIds)));
};
export default function announcementsReducer(state = initialState, action) { export default function announcementsReducer(state = initialState, action) {
switch(action.type) { switch(action.type) {
case ANNOUNCEMENTS_TOGGLE_SHOW:
return state.withMutations(map => {
if (!map.get('show')) map.set('unread', ImmutableSet());
map.set('show', !map.get('show'));
});
case ANNOUNCEMENTS_FETCH_REQUEST: case ANNOUNCEMENTS_FETCH_REQUEST:
return state.set('isLoading', true); return state.set('isLoading', true);
case ANNOUNCEMENTS_FETCH_SUCCESS: case ANNOUNCEMENTS_FETCH_SUCCESS:
return state.withMutations(map => { return state.withMutations(map => {
map.set('items', fromJS(action.announcements)); const items = fromJS(action.announcements);
map.set('unread', ImmutableSet());
addUnread(map, items);
map.set('items', items);
map.set('isLoading', false); map.set('isLoading', false);
}); });
case ANNOUNCEMENTS_FETCH_FAIL: case ANNOUNCEMENTS_FETCH_FAIL:
return state.set('isLoading', false); return state.set('isLoading', false);
case ANNOUNCEMENTS_UPDATE: case ANNOUNCEMENTS_UPDATE:
return state.update('items', list => list.unshift(fromJS(action.announcement)).sortBy(announcement => announcement.get('starts_at'))); return addUnread(state, [fromJS(action.announcement)]).update('items', list => list.unshift(fromJS(action.announcement)).sortBy(announcement => announcement.get('starts_at')));
case ANNOUNCEMENTS_DISMISS:
return state.update('items', list => list.filterNot(announcement => announcement.get('id') === action.id));
case ANNOUNCEMENTS_REACTION_UPDATE: case ANNOUNCEMENTS_REACTION_UPDATE:
return updateReactionCount(state, action.reaction); return updateReactionCount(state, action.reaction);
case ANNOUNCEMENTS_REACTION_ADD_REQUEST: case ANNOUNCEMENTS_REACTION_ADD_REQUEST:

View file

@ -6631,7 +6631,7 @@ noscript {
} }
.announcements { .announcements {
background: lighten($ui-base-color, 4%); background: lighten($ui-base-color, 8%);
border-top: 1px solid $ui-base-color; border-top: 1px solid $ui-base-color;
font-size: 13px; font-size: 13px;
display: flex; display: flex;
@ -6672,12 +6672,6 @@ noscript {
font-weight: 500; font-weight: 500;
margin-bottom: 10px; margin-bottom: 10px;
} }
&__dismiss-icon {
position: absolute;
top: 12px;
right: 12px;
}
} }
&__pagination { &__pagination {

View file

@ -6,10 +6,10 @@ class ReactionValidator < ActiveModel::Validator
LIMIT = 8 LIMIT = 8
def validate(reaction) def validate(reaction)
return if reaction.name.blank? || reaction.custom_emoji_id.present? return if reaction.name.blank?
reaction.errors.add(:name, I18n.t('reactions.errors.unrecognized_emoji')) unless unicode_emoji?(reaction.name) reaction.errors.add(:name, I18n.t('reactions.errors.unrecognized_emoji')) if reaction.custom_emoji_id.blank? && !unicode_emoji?(reaction.name)
reaction.errors.add(:base, I18n.t('reactions.errors.limit_reached')) if limit_reached?(reaction) reaction.errors.add(:base, I18n.t('reactions.errors.limit_reached')) if new_reaction?(reaction) && limit_reached?(reaction)
end end
private private
@ -18,6 +18,10 @@ class ReactionValidator < ActiveModel::Validator
SUPPORTED_EMOJIS.include?(name) SUPPORTED_EMOJIS.include?(name)
end end
def new_reaction?(reaction)
!reaction.announcement.announcement_reactions.where(name: reaction.name).exists?
end
def limit_reached?(reaction) def limit_reached?(reaction)
reaction.announcement.announcement_reactions.where.not(name: reaction.name).count('distinct name') >= LIMIT reaction.announcement.announcement_reactions.where.not(name: reaction.name).count('distinct name') >= LIMIT
end end

View file

@ -198,11 +198,13 @@ ca:
change_email_user: "%{name} ha canviat l'adreça de correu electrònic del usuari %{target}" change_email_user: "%{name} ha canviat l'adreça de correu electrònic del usuari %{target}"
confirm_user: "%{name} ha confirmat l'adreça de correu electrònic de l'usuari %{target}" confirm_user: "%{name} ha confirmat l'adreça de correu electrònic de l'usuari %{target}"
create_account_warning: "%{name} ha enviat un avís a %{target}" create_account_warning: "%{name} ha enviat un avís a %{target}"
create_announcement: "%{name} ha creat un nou anunci %{target}"
create_custom_emoji: "%{name} ha pujat un nou emoji %{target}" create_custom_emoji: "%{name} ha pujat un nou emoji %{target}"
create_domain_allow: "%{name} ha afegit a la llista blanca el domini %{target}" create_domain_allow: "%{name} ha afegit a la llista blanca el domini %{target}"
create_domain_block: "%{name} ha blocat el domini %{target}" create_domain_block: "%{name} ha blocat el domini %{target}"
create_email_domain_block: "%{name} ha afegit a la llista negra el domini del correu electrònic %{target}" create_email_domain_block: "%{name} ha afegit a la llista negra el domini del correu electrònic %{target}"
demote_user: "%{name} ha degradat l'usuari %{target}" demote_user: "%{name} ha degradat l'usuari %{target}"
destroy_announcement: "%{name} ha eliminat l'anunci %{target}"
destroy_custom_emoji: "%{name} ha destruït l'emoji %{target}" destroy_custom_emoji: "%{name} ha destruït l'emoji %{target}"
destroy_domain_allow: "%{name} ha eliminat el domini %{target} de la llista blanca" destroy_domain_allow: "%{name} ha eliminat el domini %{target} de la llista blanca"
destroy_domain_block: "%{name} ha desblocat el domini %{target}" destroy_domain_block: "%{name} ha desblocat el domini %{target}"
@ -224,10 +226,22 @@ ca:
unassigned_report: "%{name} ha des-assignat l'informe %{target}" unassigned_report: "%{name} ha des-assignat l'informe %{target}"
unsilence_account: "%{name} ha silenciat el compte de %{target}" unsilence_account: "%{name} ha silenciat el compte de %{target}"
unsuspend_account: "%{name} ha llevat la suspensió del compte de %{target}" unsuspend_account: "%{name} ha llevat la suspensió del compte de %{target}"
update_announcement: "%{name} ha actualitzat l'anunci %{target}"
update_custom_emoji: "%{name} ha actualitzat l'emoji %{target}" update_custom_emoji: "%{name} ha actualitzat l'emoji %{target}"
update_status: "%{name} estat actualitzat per %{target}" update_status: "%{name} estat actualitzat per %{target}"
deleted_status: "(tut esborrat)" deleted_status: "(tut esborrat)"
title: Registre d'auditoria title: Registre d'auditoria
announcements:
edit:
title: Edita l'anunci
empty: No s'ha trobat cap anunci.
live: En viu
new:
create: Crea un anunci
title: Nou anunci
published: Publicat
time_range: Interval de temps
title: Anuncis
custom_emojis: custom_emojis:
assign_category: Assigna una categoria assign_category: Assigna una categoria
by_domain: Domini by_domain: Domini
@ -657,6 +671,9 @@ ca:
hint_html: "<strong>Pista:</strong> No et preguntarem un altre cop la teva contrasenya en la pròxima hora." hint_html: "<strong>Pista:</strong> No et preguntarem un altre cop la teva contrasenya en la pròxima hora."
invalid_password: Contrasenya no vàlida invalid_password: Contrasenya no vàlida
prompt: Confirmi la contrasenya per a continuar prompt: Confirmi la contrasenya per a continuar
date:
formats:
default: "%b %d, %Y"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count} h" about_x_hours: "%{count} h"
@ -758,6 +775,8 @@ ca:
all: Tot all: Tot
changes_saved_msg: Els canvis s'han desat correctament! changes_saved_msg: Els canvis s'han desat correctament!
copy: Copia copy: Copia
delete: Esborra
edit: Edita
no_batch_actions_available: Cap accions de lot disponibles en aquesta pàgina no_batch_actions_available: Cap accions de lot disponibles en aquesta pàgina
order_by: Ordena per order_by: Ordena per
save_changes: Desa els canvis save_changes: Desa els canvis
@ -929,6 +948,9 @@ ca:
other: Altre other: Altre
posting_defaults: Valors predeterminats de publicació posting_defaults: Valors predeterminats de publicació
public_timelines: Línies de temps públiques public_timelines: Línies de temps públiques
reactions:
errors:
unrecognized_emoji: no és un emoji reconegut
relationships: relationships:
activity: Activitat del compte activity: Activitat del compte
dormant: Inactiu dormant: Inactiu

View file

@ -198,11 +198,13 @@ co:
change_email_user: "%{name} hà cambiatu lindirizzu e-mail di %{target}" change_email_user: "%{name} hà cambiatu lindirizzu e-mail di %{target}"
confirm_user: "%{name} hà cunfirmatu lindirizzu e-mail di %{target}" confirm_user: "%{name} hà cunfirmatu lindirizzu e-mail di %{target}"
create_account_warning: "%{name} hà mandatu un'avertimentu à %{target}" create_account_warning: "%{name} hà mandatu un'avertimentu à %{target}"
create_announcement: "%{name} hà creatu u novu annunziu %{target}"
create_custom_emoji: "%{name} hà caricatu una novemoji %{target}" create_custom_emoji: "%{name} hà caricatu una novemoji %{target}"
create_domain_allow: "%{name} hà messu u duminiu %{target} nanta lista bianca" create_domain_allow: "%{name} hà messu u duminiu %{target} nanta lista bianca"
create_domain_block: "%{name} hà bluccatu u duminiu %{target}" create_domain_block: "%{name} hà bluccatu u duminiu %{target}"
create_email_domain_block: "%{name} hà messu u duminiu e-mail %{target} nanta lista nera" create_email_domain_block: "%{name} hà messu u duminiu e-mail %{target} nanta lista nera"
demote_user: "%{name} hà ritrugradatu lutilizatore %{target}" demote_user: "%{name} hà ritrugradatu lutilizatore %{target}"
destroy_announcement: "%{name} hà sguassatu u novu annunziu %{target}"
destroy_custom_emoji: "%{name} hà sguassatu l'emoji %{target}" destroy_custom_emoji: "%{name} hà sguassatu l'emoji %{target}"
destroy_domain_allow: "%{name} hà sguassatu u duminiu %{target} da a lista bianca" destroy_domain_allow: "%{name} hà sguassatu u duminiu %{target} da a lista bianca"
destroy_domain_block: "%{name} hà sbluccatu u duminiu %{target}" destroy_domain_block: "%{name} hà sbluccatu u duminiu %{target}"
@ -224,10 +226,22 @@ co:
unassigned_report: "%{name} hà disassignatu u signalamentu %{target}" unassigned_report: "%{name} hà disassignatu u signalamentu %{target}"
unsilence_account: "%{name} hà fattu che u contu di %{target} ùn hè più silenzatu" unsilence_account: "%{name} hà fattu che u contu di %{target} ùn hè più silenzatu"
unsuspend_account: "%{name} hà fattu che u contu di %{target} ùn hè più suspesu" unsuspend_account: "%{name} hà fattu che u contu di %{target} ùn hè più suspesu"
update_announcement: "%{name} hà cambiatu u novu annunziu %{target}"
update_custom_emoji: "%{name} hà messu à ghjornu lemoji %{target}" update_custom_emoji: "%{name} hà messu à ghjornu lemoji %{target}"
update_status: "%{name} hà cambiatu u statutu di %{target}" update_status: "%{name} hà cambiatu u statutu di %{target}"
deleted_status: "(statutu sguassatu)" deleted_status: "(statutu sguassatu)"
title: Ghjurnale daudit title: Ghjurnale daudit
announcements:
edit:
title: Mudificà annunzii
empty: Manc'un annunziu trovu.
live: Attivu
new:
create: Creà un'annunziu
title: Novu annunziu
published: Pubblicatu
time_range: Intervallu di tempu
title: Annunzii
custom_emojis: custom_emojis:
assign_category: Aghjunghje categuria assign_category: Aghjunghje categuria
by_domain: Duminiu by_domain: Duminiu
@ -372,6 +386,8 @@ co:
title: Invitazione title: Invitazione
pending_accounts: pending_accounts:
title: Conti in attesa (%{count}) title: Conti in attesa (%{count})
relationships:
title: Rilazione di %{acct}
relays: relays:
add_new: Aghjunghje un ripetitore add_new: Aghjunghje un ripetitore
delete: Sguassà delete: Sguassà
@ -655,6 +671,9 @@ co:
hint_html: "<strong>Astuzia:</strong> Ùn avemu micca da dumandavvi stu codice per l'ore chì vene." hint_html: "<strong>Astuzia:</strong> Ùn avemu micca da dumandavvi stu codice per l'ore chì vene."
invalid_password: Chjave d'accessu micca curretta invalid_password: Chjave d'accessu micca curretta
prompt: Cunfirmà a chjave d'accessu per cuntinuvà prompt: Cunfirmà a chjave d'accessu per cuntinuvà
date:
formats:
default: "%d %b %Y"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}o" about_x_hours: "%{count}o"
@ -731,6 +750,7 @@ co:
hint_html: "<strong>Quale sò i hashtag in mostra?</strong> Sò messi in vista nant'à u vostru prufile pubblicu è permettenu à a ghjente di vede i vostri statuti ch'annu stu hashtag. Sò una bona manere di mustrà e vostre opere creative o i prughjetti à longu termine." hint_html: "<strong>Quale sò i hashtag in mostra?</strong> Sò messi in vista nant'à u vostru prufile pubblicu è permettenu à a ghjente di vede i vostri statuti ch'annu stu hashtag. Sò una bona manere di mustrà e vostre opere creative o i prughjetti à longu termine."
filters: filters:
contexts: contexts:
account: Prufili
home: Accolta home: Accolta
notifications: Nutificazione notifications: Nutificazione
public: Linee pubbliche public: Linee pubbliche
@ -755,6 +775,8 @@ co:
all: Tuttu all: Tuttu
changes_saved_msg: Cambiamenti salvati! changes_saved_msg: Cambiamenti salvati!
copy: Cupià copy: Cupià
delete: Sguassà
edit: Mudificà
no_batch_actions_available: Alcun'azzione di gruppu nant'à sta pagina no_batch_actions_available: Alcun'azzione di gruppu nant'à sta pagina
order_by: Urdinà da order_by: Urdinà da
save_changes: Salvà e mudificazione save_changes: Salvà e mudificazione
@ -926,11 +948,15 @@ co:
other: Altre other: Altre
posting_defaults: Paramettri predefiniti posting_defaults: Paramettri predefiniti
public_timelines: Linee pubbliche public_timelines: Linee pubbliche
reactions:
errors:
unrecognized_emoji: ùn hè micca un'emoji ricunisciuta
relationships: relationships:
activity: Attività di u contu activity: Attività di u contu
dormant: Inattivu dormant: Inattivu
followers: Abbunati followers: Abbunati
following: Abbunamenti following: Abbunamenti
invited: Invitatu
last_active: Ultima attività last_active: Ultima attività
most_recent: Più ricente most_recent: Più ricente
moved: Spiazzatu moved: Spiazzatu
@ -959,8 +985,8 @@ co:
proceed: Cuntinuà per risponde proceed: Cuntinuà per risponde
prompt: 'Vulete risponde à stu statutu:' prompt: 'Vulete risponde à stu statutu:'
scheduled_statuses: scheduled_statuses:
over_daily_limit: Avete trapassatu a limita di %{limit} statuti planificati per stu ghjornu over_daily_limit: Avete trapassatu a limita di %{limit} statuti pianificati per stu ghjornu
over_total_limit: Avete trapassatu a limita di %{limit} statuti planificati over_total_limit: Avete trapassatu a limita di %{limit} statuti pianificati
too_soon: A data deve esse indè u futuru too_soon: A data deve esse indè u futuru
sessions: sessions:
activity: Ultima attività activity: Ultima attività

View file

@ -950,6 +950,7 @@ de:
public_timelines: Öffentliche Zeitleisten public_timelines: Öffentliche Zeitleisten
reactions: reactions:
errors: errors:
limit_reached: Limit für verschiedene Reaktionen erreicht
unrecognized_emoji: ist kein anerkanntes Emoji unrecognized_emoji: ist kein anerkanntes Emoji
relationships: relationships:
activity: Kontoaktivität activity: Kontoaktivität

View file

@ -2,7 +2,7 @@
ca: ca:
devise: devise:
confirmations: confirmations:
confirmed: L'adreça de correu s'ha confirmat correctament. confirmed: La teva adreça de correu electrònic s'ha confirmat correctament.
send_instructions: "En pocs minuts rebràs un correu electrònic amb instruccions sobre com confirmar l'adreça de correu. \nSi us plau verifica la teva carpeta de correu brossa si no has rebut aquest correu." send_instructions: "En pocs minuts rebràs un correu electrònic amb instruccions sobre com confirmar l'adreça de correu. \nSi us plau verifica la teva carpeta de correu brossa si no has rebut aquest correu."
send_paranoid_instructions: |- send_paranoid_instructions: |-
Si l'adreça de correu electrònic existeix en la nostra base de dades, en pocs minuts rebràs un correu electrònic amb instruccions sobre com confirmar l'adreça de correu. Si l'adreça de correu electrònic existeix en la nostra base de dades, en pocs minuts rebràs un correu electrònic amb instruccions sobre com confirmar l'adreça de correu.
@ -25,7 +25,7 @@ ca:
explanation: Has creat un compte a %{host} amb aquesta adreça de correu electrònic. Estàs a un sol clic de l'activació. Si no fos així, ignora aquest correu electrònic. explanation: Has creat un compte a %{host} amb aquesta adreça de correu electrònic. Estàs a un sol clic de l'activació. Si no fos així, ignora aquest correu electrònic.
explanation_when_pending: Has sol·licitat una invitació a %{host} amb aquesta adreça de correu electrònic. Un cop confirmis la teva adreça de correu electrònic revisarem la teva sol·licitud. No es pot iniciar la sessió fins llavors. Si la teva sol·licitud és rebutjada les teves dades seliminaran, de manera que no sexigirà cap altra acció. Si no has estat tu qui ha fet aquest sol·licitud si us plau ignora aquest correu electrònic. explanation_when_pending: Has sol·licitat una invitació a %{host} amb aquesta adreça de correu electrònic. Un cop confirmis la teva adreça de correu electrònic revisarem la teva sol·licitud. No es pot iniciar la sessió fins llavors. Si la teva sol·licitud és rebutjada les teves dades seliminaran, de manera que no sexigirà cap altra acció. Si no has estat tu qui ha fet aquest sol·licitud si us plau ignora aquest correu electrònic.
extra_html: Si us plau consulta també <a href="%{terms_path}"> les regles del servidor</a> i <a href="%{policy_path}"> les nostres condicions de servei</a>. extra_html: Si us plau consulta també <a href="%{terms_path}"> les regles del servidor</a> i <a href="%{policy_path}"> les nostres condicions de servei</a>.
subject: 'Mastodont: Instruccions de confirmació %{instance}' subject: 'Mastodon: Instruccions de confirmació %{instance}'
title: Verifica l'adreça de correu title: Verifica l'adreça de correu
email_changed: email_changed:
explanation: 'L''adreça de correu del teu compte s''està canviant a:' explanation: 'L''adreça de correu del teu compte s''està canviant a:'

View file

@ -23,43 +23,43 @@ es:
explanation: Has creado una cuenta en %{host} con esta dirección de correo electrónico. Estas a un clic de activarla. Si no fue usted, por favor ignore este correo electrónico. explanation: Has creado una cuenta en %{host} con esta dirección de correo electrónico. Estas a un clic de activarla. Si no fue usted, por favor ignore este correo electrónico.
explanation_when_pending: Usted ha solicitado una invitación a %{host} con esta dirección de correo electrónico. Una vez que confirme su dirección de correo electrónico, revisaremos su aplicación. No puede iniciar sesión hasta que su aplicación sea revisada. Si su solicitud está rechazada, sus datos serán eliminados, así que no será necesaria ninguna acción adicional por ti. Si no fuera usted, por favor ignore este correo electrónico. explanation_when_pending: Usted ha solicitado una invitación a %{host} con esta dirección de correo electrónico. Una vez que confirme su dirección de correo electrónico, revisaremos su aplicación. No puede iniciar sesión hasta que su aplicación sea revisada. Si su solicitud está rechazada, sus datos serán eliminados, así que no será necesaria ninguna acción adicional por ti. Si no fuera usted, por favor ignore este correo electrónico.
extra_html: Por favor revise <a href="%{terms_path}">las reglas de la instancia</a> y <a href="%{policy_path}">nuestros términos de servicio</a>. extra_html: Por favor revise <a href="%{terms_path}">las reglas de la instancia</a> y <a href="%{policy_path}">nuestros términos de servicio</a>.
subject: 'Mastodonte: Instrucciones de confirmación para %{instance}' subject: 'Mastodon: Instrucciones de confirmación para %{instance}'
title: Verificar dirección de correo electrónico title: Verificar dirección de correo electrónico
email_changed: email_changed:
explanation: 'El correo electrónico para su cuenta esta siendo cambiada a:' explanation: 'El correo electrónico para su cuenta esta siendo cambiada a:'
extra: Si usted no ha cambiado su correo electrónico, es probable que alguien haya conseguido acceso a su cuenta. Por favor cambie su contraseña inmediatamente o contacte al administrador de la instancia si usted no puede iniciar sesión. extra: Si usted no ha cambiado su correo electrónico, es probable que alguien haya conseguido acceso a su cuenta. Por favor cambie su contraseña inmediatamente o contacte al administrador de la instancia si usted no puede iniciar sesión.
subject: 'Mastodonte: Correo electrónico cambiado' subject: 'Mastodon: Correo electrónico cambiado'
title: Nueva dirección de correo electrónico title: Nueva dirección de correo electrónico
password_change: password_change:
explanation: La contraseña de su cuenta a sido cambiada. explanation: La contraseña de su cuenta a sido cambiada.
extra: Si usted no a cambiado su contraseña. es probable que alguien a conseguido acceso a su cuenta. Por favor cambie su contraseña inmediatamente o contacte a el administrador de la instancia si usted esta bloqueado de su cuenta. extra: Si usted no a cambiado su contraseña. es probable que alguien a conseguido acceso a su cuenta. Por favor cambie su contraseña inmediatamente o contacte a el administrador de la instancia si usted esta bloqueado de su cuenta.
subject: 'Mastodonte: Contraseña cambiada' subject: 'Mastodon: Contraseña cambiada'
title: Contraseña cambiada title: Contraseña cambiada
reconfirmation_instructions: reconfirmation_instructions:
explanation: Confirme la nueva dirección para cambiar su coreo electrónico. explanation: Confirme la nueva dirección para cambiar su coreo electrónico.
extra: Si no iniciaste este cambio, por favor ignora este correo. Esta dirección de correo para la cuenta de Mastodonte no cambiará hasta que accedas al vinculo arriba. extra: Si no iniciaste este cambio, por favor ignora este correo. Esta dirección de correo para la cuenta de Mastodon no cambiará hasta que accedas al vinculo arriba.
subject: 'Mastodonte: Confirme correo electrónico para %{instance}' subject: 'Mastodon: Confirme correo electrónico para %{instance}'
title: Verifique dirección de correo electrónico title: Verifique dirección de correo electrónico
reset_password_instructions: reset_password_instructions:
action: Cambiar contraseña action: Cambiar contraseña
explanation: Solicitaste una nueva contraseña para tu cuenta. explanation: Solicitaste una nueva contraseña para tu cuenta.
extra: Si no solicitaste esto, por favor ignora este correo. Tu contraseña no cambiará hasta que tu accedas al vinculo arriba y crees una nueva. extra: Si no solicitaste esto, por favor ignora este correo. Tu contraseña no cambiará hasta que tu accedas al vinculo arriba y crees una nueva.
subject: 'Mastodonte: Instrucciones para reiniciar contraseña' subject: 'Mastodon: Instrucciones para reiniciar contraseña'
title: Reiniciar contraseña title: Reiniciar contraseña
two_factor_disabled: two_factor_disabled:
explanation: La autenticación de dos factores para tu cuenta ha sido deshabilitada. Ahora puedes conectarte solamente usando la dirección de correo electrónico y la contraseña. explanation: La autenticación de dos factores para tu cuenta ha sido deshabilitada. Ahora puedes conectarte solamente usando la dirección de correo electrónico y la contraseña.
subject: 'Mastodonte: La autenticación de dos factores está deshabilitada' subject: 'Mastodon: La autenticación de dos factores está deshabilitada'
title: 2FA desactivada title: 2FA desactivada
two_factor_enabled: two_factor_enabled:
explanation: La autenticación de dos factores para tu cuenta ha sido habilitada. Se requiere un token generado por la aplicación TOTP emparejada para ingresar. explanation: La autenticación de dos factores para tu cuenta ha sido habilitada. Se requiere un token generado por la aplicación TOTP emparejada para ingresar.
subject: 'Mastodonte: La autenticación de dos factores está habilitada' subject: 'Mastodon: La autenticación de dos factores está habilitada'
title: 2FA activada title: 2FA activada
two_factor_recovery_codes_changed: two_factor_recovery_codes_changed:
explanation: Los códigos de recuperación previos han sido invalidados y se generaron códigos nuevos. explanation: Los códigos de recuperación previos han sido invalidados y se generaron códigos nuevos.
subject: 'Mastodonte: Los códigos de recuperación de dos factores fueron regenerados' subject: 'Mastodon: Los códigos de recuperación de dos factores fueron regenerados'
title: Códigos de recuperación 2FA cambiados title: Códigos de recuperación 2FA cambiados
unlock_instructions: unlock_instructions:
subject: 'Mastodonte: Instrucciones para desbloquear' subject: 'Mastodon: Instrucciones para desbloquear'
omniauth_callbacks: omniauth_callbacks:
failure: No podemos autentificarle desde %{kind} debido a "%{reason}". failure: No podemos autentificarle desde %{kind} debido a "%{reason}".
success: Autentificado con éxito desde la cuenta %{kind} . success: Autentificado con éxito desde la cuenta %{kind} .

View file

@ -38,6 +38,7 @@ uk:
application: Додаток application: Додаток
callback_url: URL зворотнього виклику callback_url: URL зворотнього виклику
delete: Видалити delete: Видалити
empty: У вас немає створених додатків.
name: Назва name: Назва
new: Новий додаток new: Новий додаток
scopes: Області видимості scopes: Області видимості
@ -125,6 +126,7 @@ uk:
read: читати усі дані вашого облікового запису read: читати усі дані вашого облікового запису
read:accounts: бачити інформацію про облікові записи read:accounts: бачити інформацію про облікові записи
read:blocks: бачити Ваші блокування read:blocks: бачити Ваші блокування
read:bookmarks: бачити ваші закладки
read:favourites: бачити Ваші вподобані пости read:favourites: бачити Ваші вподобані пости
read:filters: бачити Ваші фільтри read:filters: бачити Ваші фільтри
read:follows: бачити Ваші підписки read:follows: бачити Ваші підписки
@ -137,6 +139,7 @@ uk:
write: змінювати усі дані вашого облікового запису write: змінювати усі дані вашого облікового запису
write:accounts: змінювати ваш профіль write:accounts: змінювати ваш профіль
write:blocks: блокувати облікові записи і домени write:blocks: блокувати облікові записи і домени
write:bookmarks: додавати пости в закладки
write:favourites: вподобані статуси write:favourites: вподобані статуси
write:filters: створювати фільтри write:filters: створювати фільтри
write:follows: підписуйтесь на людей write:follows: підписуйтесь на людей

View file

@ -198,11 +198,13 @@ el:
change_email_user: Ο/Η %{name} άλλαξε τη διεύθυνση email του χρήστη %{target} change_email_user: Ο/Η %{name} άλλαξε τη διεύθυνση email του χρήστη %{target}
confirm_user: Ο/Η %{name} επιβεβαίωσε τη διεύθυνση email του χρήστη %{target} confirm_user: Ο/Η %{name} επιβεβαίωσε τη διεύθυνση email του χρήστη %{target}
create_account_warning: Ο/Η %{name} έστειλε προειδοποίηση προς %{target} create_account_warning: Ο/Η %{name} έστειλε προειδοποίηση προς %{target}
create_announcement: Νέα ανακοίνωση %{target} από %{name}
create_custom_emoji: Ο/Η %{name} ανέβασε νέο emoji %{target} create_custom_emoji: Ο/Η %{name} ανέβασε νέο emoji %{target}
create_domain_allow: Ο/Η %{name} έβαλε τον τομέα %{target} σε λευκή λίστα create_domain_allow: Ο/Η %{name} έβαλε τον τομέα %{target} σε λευκή λίστα
create_domain_block: Ο/Η %{name} μπλόκαρε τον τομέα %{target} create_domain_block: Ο/Η %{name} μπλόκαρε τον τομέα %{target}
create_email_domain_block: Ο/Η %{name} έβαλε τον τομέα email %{target} σε μαύρη λίστα create_email_domain_block: Ο/Η %{name} έβαλε τον τομέα email %{target} σε μαύρη λίστα
demote_user: Ο/Η %{name} υποβίβασε το χρήστη %{target} demote_user: Ο/Η %{name} υποβίβασε το χρήστη %{target}
destroy_announcement: Διαγραφή ανακοίνωσης %{target} από %{name}
destroy_custom_emoji: Ο/Η %{name} κατέστρεψε το emoji %{target} destroy_custom_emoji: Ο/Η %{name} κατέστρεψε το emoji %{target}
destroy_domain_allow: Ο/Η %{name} αφαίρεσε τον τομέα %{target} από λίστα εγκρίσεων destroy_domain_allow: Ο/Η %{name} αφαίρεσε τον τομέα %{target} από λίστα εγκρίσεων
destroy_domain_block: Ο/Η %{name} ξεμπλόκαρε τον τομέα %{target} destroy_domain_block: Ο/Η %{name} ξεμπλόκαρε τον τομέα %{target}
@ -224,10 +226,22 @@ el:
unassigned_report: Ο/Η %{name} αποδέσμευσε την καταγγελία %{target} unassigned_report: Ο/Η %{name} αποδέσμευσε την καταγγελία %{target}
unsilence_account: Ο/Η %{name} ήρε την αποσιώπηση του λογαριασμού του/της %{target} unsilence_account: Ο/Η %{name} ήρε την αποσιώπηση του λογαριασμού του/της %{target}
unsuspend_account: Ο/Η %{name} ήρε την παύση του λογαριασμού του χρήστη %{target} unsuspend_account: Ο/Η %{name} ήρε την παύση του λογαριασμού του χρήστη %{target}
update_announcement: Ενημέρωση ανακοίνωσης %{target} από %{name}
update_custom_emoji: Ο/Η %{name} ενημέρωσε το emoji %{target} update_custom_emoji: Ο/Η %{name} ενημέρωσε το emoji %{target}
update_status: Ο/Η %{name} ενημέρωσε την κατάσταση του/της %{target} update_status: Ο/Η %{name} ενημέρωσε την κατάσταση του/της %{target}
deleted_status: "(διαγραμμένη δημοσίευση)" deleted_status: "(διαγραμμένη δημοσίευση)"
title: Αρχείο ελέγχου title: Αρχείο ελέγχου
announcements:
edit:
title: Ενημέρωση ανακοίνωσης
empty: Δεν βρέθηκε ανακοίνωση.
live: Ενεργές
new:
create: Δημιουργία ανακοίνωσης
title: Νέα ανακοίνωση
published: Δημοσιευμένη
time_range: Χρονική διάρκεια
title: Ανακοινώσεις
custom_emojis: custom_emojis:
assign_category: Κατηγορία assign_category: Κατηγορία
by_domain: Τομέας by_domain: Τομέας
@ -372,6 +386,8 @@ el:
title: Προσκλήσεις title: Προσκλήσεις
pending_accounts: pending_accounts:
title: Λογαριασμοί σε αναμονή (%{count}) title: Λογαριασμοί σε αναμονή (%{count})
relationships:
title: Σχέσεις %{acct}
relays: relays:
add_new: Πρόσθεσε νέο ανταποκριτή (relay) add_new: Πρόσθεσε νέο ανταποκριτή (relay)
delete: Διαγραφή delete: Διαγραφή
@ -655,6 +671,9 @@ el:
hint_html: "<strong>Συμβουλή:</strong> Δεν θα σου ζητήσουμε τον κωδικό ασφαλείας σου ξανά για την επόμενη ώρα." hint_html: "<strong>Συμβουλή:</strong> Δεν θα σου ζητήσουμε τον κωδικό ασφαλείας σου ξανά για την επόμενη ώρα."
invalid_password: Μη έγκυρο συνθηματικό invalid_password: Μη έγκυρο συνθηματικό
prompt: Επιβεβαίωση συνθηματικού για συνέχεια prompt: Επιβεβαίωση συνθηματικού για συνέχεια
date:
formats:
default: "%b %d, %Y"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}ω" about_x_hours: "%{count}ω"
@ -731,6 +750,7 @@ el:
hint_html: "<strong>Τι είναι οι προβεβλημένες ταμπέλες;</strong> Προβάλλονται στο δημόσιο προφίλ σου επιτρέποντας σε όποιον το βλέπει να χαζέψει τις δημοσιεύσεις που τις χρησιμοποιούν. Είναι ωραίος τρόπος να παρακολουθείς κάποια δημιουργία ή ένα μακροπρόθεσμο έργο." hint_html: "<strong>Τι είναι οι προβεβλημένες ταμπέλες;</strong> Προβάλλονται στο δημόσιο προφίλ σου επιτρέποντας σε όποιον το βλέπει να χαζέψει τις δημοσιεύσεις που τις χρησιμοποιούν. Είναι ωραίος τρόπος να παρακολουθείς κάποια δημιουργία ή ένα μακροπρόθεσμο έργο."
filters: filters:
contexts: contexts:
account: Προφίλ
home: Αρχική ροή home: Αρχική ροή
notifications: Ειδοποιήσεις notifications: Ειδοποιήσεις
public: Δημόσιες ροές public: Δημόσιες ροές
@ -755,6 +775,8 @@ el:
all: Όλα all: Όλα
changes_saved_msg: Οι αλλαγές αποθηκεύτηκαν! changes_saved_msg: Οι αλλαγές αποθηκεύτηκαν!
copy: Αντιγραφή copy: Αντιγραφή
delete: Διαγραφή
edit: Ενημέρωση
no_batch_actions_available: Δεν υπάρχουν ομαδικές ενέργειες σε αυτή τη σελίδα no_batch_actions_available: Δεν υπάρχουν ομαδικές ενέργειες σε αυτή τη σελίδα
order_by: Ταξινόμηση κατά order_by: Ταξινόμηση κατά
save_changes: Αποθήκευση αλλαγών save_changes: Αποθήκευση αλλαγών
@ -926,11 +948,15 @@ el:
other: Άλλες other: Άλλες
posting_defaults: Προεπιλογές δημοσίευσης posting_defaults: Προεπιλογές δημοσίευσης
public_timelines: Δημόσιες ροές public_timelines: Δημόσιες ροές
reactions:
errors:
unrecognized_emoji: δεν αναγνωρίζεται ως emoji
relationships: relationships:
activity: Δραστηριότητα λογαριασμού activity: Δραστηριότητα λογαριασμού
dormant: Αδρανείς dormant: Αδρανείς
followers: Σε ακολουθούν followers: Σε ακολουθούν
following: Ακολουθείς following: Ακολουθείς
invited: Προσκεκλημένοι
last_active: Τελευταία δραστηριότητα last_active: Τελευταία δραστηριότητα
most_recent: Πιο πρόσφατα most_recent: Πιο πρόσφατα
moved: Μετακόμισε moved: Μετακόμισε

View file

@ -198,11 +198,13 @@ es-AR:
change_email_user: "%{name} cambió la dirección de correo electrónico del usuario %{target}" change_email_user: "%{name} cambió la dirección de correo electrónico del usuario %{target}"
confirm_user: "%{name} confirmó la dirección de correo del usuario %{target}" confirm_user: "%{name} confirmó la dirección de correo del usuario %{target}"
create_account_warning: "%{name} envió una advertencia a %{target}" create_account_warning: "%{name} envió una advertencia a %{target}"
create_announcement: "%{name} creó el nuevo anuncio %{target}"
create_custom_emoji: "%{name} subió nuevo emoji %{target}" create_custom_emoji: "%{name} subió nuevo emoji %{target}"
create_domain_allow: "%{name} aprobó el dominio %{target}" create_domain_allow: "%{name} aprobó el dominio %{target}"
create_domain_block: "%{name} bloqueó el dominio %{target}" create_domain_block: "%{name} bloqueó el dominio %{target}"
create_email_domain_block: "%{name} desaprobó el dominio de correo electrónico %{target}" create_email_domain_block: "%{name} desaprobó el dominio de correo electrónico %{target}"
demote_user: "%{name} bajó de nivel al usuario %{target}" demote_user: "%{name} bajó de nivel al usuario %{target}"
destroy_announcement: "%{name} eliminó el anuncio %{target}"
destroy_custom_emoji: "%{name} destruyó el emoji %{target}" destroy_custom_emoji: "%{name} destruyó el emoji %{target}"
destroy_domain_allow: "%{name} quitó el dominio %{target} de los permitidos" destroy_domain_allow: "%{name} quitó el dominio %{target} de los permitidos"
destroy_domain_block: "%{name} desbloqueó el dominio %{target}" destroy_domain_block: "%{name} desbloqueó el dominio %{target}"
@ -224,10 +226,22 @@ es-AR:
unassigned_report: "%{name} desasignó la denuncia %{target}" unassigned_report: "%{name} desasignó la denuncia %{target}"
unsilence_account: "%{name} quitó el silenciado de la cuenta de %{target}" unsilence_account: "%{name} quitó el silenciado de la cuenta de %{target}"
unsuspend_account: "%{name} quitó la suspensión de la cuenta de %{target}" unsuspend_account: "%{name} quitó la suspensión de la cuenta de %{target}"
update_announcement: "%{name} actualizó el anuncio %{target}"
update_custom_emoji: "%{name} actualizó el emoji %{target}" update_custom_emoji: "%{name} actualizó el emoji %{target}"
update_status: "%{name} actualizó el estado de %{target}" update_status: "%{name} actualizó el estado de %{target}"
deleted_status: "(estado borrado)" deleted_status: "(estado borrado)"
title: Registro de auditoría title: Registro de auditoría
announcements:
edit:
title: Editar anuncio
empty: No se encontraron anuncios.
live: En vivo
new:
create: Crear anuncio
title: Nuevo anuncio
published: Publicados
time_range: Rango de tiempo
title: Anuncios
custom_emojis: custom_emojis:
assign_category: Asignar categoría assign_category: Asignar categoría
by_domain: Dominio by_domain: Dominio
@ -657,6 +671,9 @@ es-AR:
hint_html: "<strong>Dato:</strong> No volveremos a preguntarte por la contraseña durante la siguiente hora." hint_html: "<strong>Dato:</strong> No volveremos a preguntarte por la contraseña durante la siguiente hora."
invalid_password: Contraseña no válida invalid_password: Contraseña no válida
prompt: Confirmar contraseña para seguir prompt: Confirmar contraseña para seguir
date:
formats:
default: "%Y.%b.%d"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}h" about_x_hours: "%{count}h"
@ -758,6 +775,8 @@ es-AR:
all: Todas all: Todas
changes_saved_msg: "¡Cambios guardados exitosamente!" changes_saved_msg: "¡Cambios guardados exitosamente!"
copy: Copiar copy: Copiar
delete: Eliminar
edit: Editar
no_batch_actions_available: No hay acciones por lotes disponibles en esta página no_batch_actions_available: No hay acciones por lotes disponibles en esta página
order_by: Ordenar por order_by: Ordenar por
save_changes: Guardar cambios save_changes: Guardar cambios
@ -929,6 +948,9 @@ es-AR:
other: Otros other: Otros
posting_defaults: Configuración predeterminada de publicaciones posting_defaults: Configuración predeterminada de publicaciones
public_timelines: Líneas temporales públicas public_timelines: Líneas temporales públicas
reactions:
errors:
unrecognized_emoji: no es un emoji conocido
relationships: relationships:
activity: Actividad de la cuenta activity: Actividad de la cuenta
dormant: Inactivas dormant: Inactivas

View file

@ -1,32 +1,32 @@
--- ---
es: es:
about: about:
about_hashtag_html: Estos son barritadas públicas etiquetadas con <strong>#%{hashtag}</strong>. Puedes interactuar con ellas si tienes una cuenta en el fediverso. about_hashtag_html: Estos son toots públicos etiquetados con <strong>#%{hashtag}</strong>. Puedes interactuar con ellos si tienes una cuenta en cualquier parte del fediverso.
about_mastodon_html: Mastodonte es una red social basada en protocolos web abiertos y Programas Libres y de Código Abierto - Plica/Foss -. Está descentralizado como el correo electrónico! about_mastodon_html: 'La red social del futuro: ¡Sin anuncios, sin vigilancia corporativa, diseño ético, y descentralización! ¡Sé dueño de tu información con Mastodon!'
about_this: Información about_this: Información
active_count_after: activo active_count_after: activo
active_footnote: Usuarios Activos Mensuales (UAM) active_footnote: Usuarios Activos Mensuales (UAM)
administered_by: 'Administrado por:' administered_by: 'Administrado por:'
api: Interfaz de Programación de la Aplicación api: API
apps: Aplicaciones móviles apps: Aplicaciones móviles
apps_platforms: Utiliza Mastodonte desde iOS, Android y otras plataformas apps_platforms: Utiliza Mastodon desde iOS, Android y otras plataformas
browse_directory: Navega por el directorio de perfiles y filtra por intereses browse_directory: Navega por el directorio de perfiles y filtra por intereses
browse_local_posts: Explora en vivo los posts públicos de este servidor browse_local_posts: Explora en vivo los posts públicos de este servidor
browse_public_posts: Navega por un transmisión en vivo de publicaciones públicas en Mastodon browse_public_posts: Navega por un transmisión en vivo de publicaciones públicas en Mastodon
contact: Contacto contact: Contacto
contact_missing: No especificado contact_missing: No especificado
contact_unavailable: No disponible contact_unavailable: N/A
discover_users: Descubrir usuarios discover_users: Descubrir usuarios
documentation: Documentación documentation: Documentación
federation_hint_html: Con una cuenta en %{instance} usted podrá seguir a las personas en cualquier servidor de Mastodonte y más allá. federation_hint_html: Con una cuenta en %{instance} usted podrá seguir a las personas en cualquier servidor de Mastodon y más allá.
get_apps: Probar una aplicación móvil get_apps: Probar una aplicación móvil
hosted_on: Mastodonte huesped en %{domain} hosted_on: Mastodon hosteado en %{domain}
instance_actor_flash: | instance_actor_flash: |
Esta cuenta es un actor virtual usado para representar al servidor y no a ningún usuario individual. Esta cuenta es un actor virtual usado para representar al servidor y no a ningún usuario individual.
Se usa para fines federativos y no debe ser bloqueado a menos que usted quiera bloquear toda la instancia, en cuyo caso se debe utilizar un bloque de dominio. Se usa para fines federativos y no debe ser bloqueado a menos que usted quiera bloquear toda la instancia, en cuyo caso se debe utilizar un bloque de dominio.
learn_more: Aprenda más learn_more: Aprende más
privacy_policy: Política de privacidad privacy_policy: Política de privacidad
see_whats_happening: Vea lo que está pasando see_whats_happening: Ver lo que está pasando
server_stats: 'Datos del servidor:' server_stats: 'Datos del servidor:'
source_code: Código fuente source_code: Código fuente
status_count_after: status_count_after:
@ -42,16 +42,16 @@ es:
rejecting_media: Los archivos multimedia de este servidor no serán procesados y no se mostrarán miniaturas, lo que requiere un clic manual en el otro servidor. rejecting_media: Los archivos multimedia de este servidor no serán procesados y no se mostrarán miniaturas, lo que requiere un clic manual en el otro servidor.
silenced: Las publicaciones de este servidor no se mostrarán en ningún lugar salvo en el Inicio si sigues al autor. silenced: Las publicaciones de este servidor no se mostrarán en ningún lugar salvo en el Inicio si sigues al autor.
suspended: No podrás seguir a nadie de este servidor, y ningún dato de este será procesado o almacenado, y no se intercambiarán datos. suspended: No podrás seguir a nadie de este servidor, y ningún dato de este será procesado o almacenado, y no se intercambiarán datos.
unavailable_content_html: Mastodonte generalmente le permite ver contenido e interactuar con usuarios de cualquier otro servidor en el fediverso. Estas son las excepciones que se han hecho en este servidor en particular. unavailable_content_html: Mastodon generalmente le permite ver contenido e interactuar con usuarios de cualquier otro servidor en el fediverso. Estas son las excepciones que se han hecho en este servidor en particular.
user_count_after: user_count_after:
one: usuario one: usuario
other: usuarios other: usuarios
user_count_before: Inicio de user_count_before: Tenemos
what_is_mastodon: "¿Qué es Mastodonte?" what_is_mastodon: "¿Qué es Mastodon?"
accounts: accounts:
choices_html: 'Elecciones de %{name}:' choices_html: 'Elecciones de %{name}:'
endorsements_hint: Puedes recomendar a gente que sigues desde la interfaz web, y aparecerán allí. endorsements_hint: Puedes recomendar a gente que sigues desde la interfaz web, y aparecerán allí.
featured_tags_hint: Puede presentar etiquetas específicas que se mostrarán aquí. featured_tags_hint: Puede presentar hashtags específicos que se mostrarán aquí.
follow: Seguir follow: Seguir
followers: followers:
one: Seguidor one: Seguidor
@ -198,11 +198,13 @@ es:
change_email_user: "%{name} ha cambiado la dirección de correo del usuario %{target}" change_email_user: "%{name} ha cambiado la dirección de correo del usuario %{target}"
confirm_user: "%{name} confirmó la dirección de correo del usuario %{target}" confirm_user: "%{name} confirmó la dirección de correo del usuario %{target}"
create_account_warning: "%{name} envió una advertencia a %{target}" create_account_warning: "%{name} envió una advertencia a %{target}"
create_announcement: "%{name} creó el nuevo anuncio %{target}"
create_custom_emoji: "%{name} subió un nuevo emoji %{target}" create_custom_emoji: "%{name} subió un nuevo emoji %{target}"
create_domain_allow: "%{name} ha añadido a la lista blanca el dominio %{target}" create_domain_allow: "%{name} ha añadido a la lista blanca el dominio %{target}"
create_domain_block: "%{name} bloqueó el dominio %{target}" create_domain_block: "%{name} bloqueó el dominio %{target}"
create_email_domain_block: "%{name} puso en lista negra el dominio de correos %{target}" create_email_domain_block: "%{name} puso en lista negra el dominio de correos %{target}"
demote_user: "%{name} degradó al usuario %{target}" demote_user: "%{name} degradó al usuario %{target}"
destroy_announcement: "%{name} eliminó el anuncio %{target}"
destroy_custom_emoji: "%{name} destruyó el emoji %{target}" destroy_custom_emoji: "%{name} destruyó el emoji %{target}"
destroy_domain_allow: "%{name} ha eliminado el dominio %{target} de la lista blanca" destroy_domain_allow: "%{name} ha eliminado el dominio %{target} de la lista blanca"
destroy_domain_block: "%{name} desbloqueó el dominio %{target}" destroy_domain_block: "%{name} desbloqueó el dominio %{target}"
@ -224,10 +226,22 @@ es:
unassigned_report: "%{name} ha desasignado la denuncia %{target}" unassigned_report: "%{name} ha desasignado la denuncia %{target}"
unsilence_account: "%{name} desactivó el silenciado de la cuenta de %{target}" unsilence_account: "%{name} desactivó el silenciado de la cuenta de %{target}"
unsuspend_account: "%{name} desactivó la suspensión de la cuenta de %{target}" unsuspend_account: "%{name} desactivó la suspensión de la cuenta de %{target}"
update_announcement: "%{name} actualizó el anuncio %{target}"
update_custom_emoji: "%{name} actualizó el emoji %{target}" update_custom_emoji: "%{name} actualizó el emoji %{target}"
update_status: "%{name} actualizó el estado de %{target}" update_status: "%{name} actualizó el estado de %{target}"
deleted_status: "(estado borrado)" deleted_status: "(estado borrado)"
title: Log de auditoría title: Log de auditoría
announcements:
edit:
title: Editar anuncio
empty: No se encontraron anuncios.
live: En vivo
new:
create: Crear anuncio
title: Nuevo anuncio
published: Publicados
time_range: Intervalo de tiempo
title: Anuncios
custom_emojis: custom_emojis:
assign_category: Asignar categoría assign_category: Asignar categoría
by_domain: Dominio by_domain: Dominio
@ -270,11 +284,11 @@ es:
feature_registrations: Registros feature_registrations: Registros
feature_relay: Relés de federación feature_relay: Relés de federación
feature_spam_check: Contra-spam feature_spam_check: Contra-spam
feature_timeline_preview: Vista previa de la cronología feature_timeline_preview: Vista previa de la línea de tiempo
features: Características features: Características
hidden_service: Federación con servicios ocultos hidden_service: Federación con servicios ocultos
open_reports: informes abiertos open_reports: informes abiertos
pending_tags: etiquetas esperando revisión pending_tags: hashtags esperando revisión
pending_users: usuarios esperando por revisión pending_users: usuarios esperando por revisión
recent_users: Usuarios recientes recent_users: Usuarios recientes
search: Búsqueda por texto completo search: Búsqueda por texto completo
@ -433,8 +447,8 @@ es:
desc_html: Conteo de estados publicados localmente, usuarios activos, y nuevos registros en periodos semanales desc_html: Conteo de estados publicados localmente, usuarios activos, y nuevos registros en periodos semanales
title: Publicar estadísticas locales acerca de actividad de usuario title: Publicar estadísticas locales acerca de actividad de usuario
bootstrap_timeline_accounts: bootstrap_timeline_accounts:
desc_html: Separa con comas los nombres de usuaria. Solo funcionará para cuentas locales desbloqueadas. Si se deja vacia, se tomará como valor por defecto a todas las administradoras locales. desc_html: Separa con comas los nombres de usuario. Solo funcionará para cuentas locales desbloqueadas. Si se deja vacío, se tomará como valor por defecto a todos los administradores locales.
title: Seguimientos predeterminados para usuarias nuevas title: Seguimientos predeterminados para usuarios nuevos
contact_information: contact_information:
email: Correo de trabajo email: Correo de trabajo
username: Nombre de usuario username: Nombre de usuario
@ -452,7 +466,7 @@ es:
domain_blocks_rationale: domain_blocks_rationale:
title: Mostrar la razón de ser title: Mostrar la razón de ser
enable_bootstrap_timeline_accounts: enable_bootstrap_timeline_accounts:
title: Habilitar seguimientos predeterminados para nuevas usuarias title: Habilitar seguimientos predeterminados para usuarios nuevos
hero: hero:
desc_html: Mostrado en la página principal. Recomendable al menos 600x100px. Por defecto se establece a la miniatura de la instancia desc_html: Mostrado en la página principal. Recomendable al menos 600x100px. Por defecto se establece a la miniatura de la instancia
title: Imagen de portada title: Imagen de portada
@ -486,7 +500,7 @@ es:
title: Modo de registros title: Modo de registros
show_known_fediverse_at_about_page: show_known_fediverse_at_about_page:
desc_html: Cuando esté activado, se mostrarán toots de todo el fediverso conocido en la vista previa. En otro caso, se mostrarán solamente toots locales. desc_html: Cuando esté activado, se mostrarán toots de todo el fediverso conocido en la vista previa. En otro caso, se mostrarán solamente toots locales.
title: Mostrar fediverso conocido en la vista previa de la cronología title: Mostrar fediverso conocido en la vista previa de la historia
show_staff_badge: show_staff_badge:
desc_html: Mostrar un parche de staff en la página de un usuario desc_html: Mostrar un parche de staff en la página de un usuario
title: Mostrar parche de staff title: Mostrar parche de staff
@ -497,28 +511,28 @@ es:
desc_html: Un buen lugar para tu código de conducta, reglas, guías y otras cosas que estén impuestas aparte en tu instancia. Puedes usar tags HTML desc_html: Un buen lugar para tu código de conducta, reglas, guías y otras cosas que estén impuestas aparte en tu instancia. Puedes usar tags HTML
title: Información extendida personalizada title: Información extendida personalizada
site_short_description: site_short_description:
desc_html: Mostrado en la barra lateral y las etiquetas de metadatos. Describe lo que es Mastodonte y qué hace especial a este servidor en un solo párrafo. si está vacío, pone por defecto la descripción de la instancia. desc_html: Mostrado en la barra lateral y las etiquetas de metadatos. Describe lo que es Mastodon y qué hace especial a este servidor en un solo párrafo. si está vacío, pone por defecto la descripción de la instancia.
title: Descripción corta de la instancia title: Descripción corta de la instancia
site_terms: site_terms:
desc_html: Puedes escribir tus propias políticas de privacidad, términos de servicio u otras legalidades. Puedes usar tags HTML desc_html: Puedes escribir tus propias políticas de privacidad, términos de servicio u otras legalidades. Puedes usar tags HTML
title: Términos de servicio personalizados title: Términos de servicio personalizados
site_title: Nombre de instancia site_title: Nombre de instancia
spam_check_enabled: spam_check_enabled:
desc_html: Mastodonte puede silenciar y reportar cuentas automáticamente usando medidas como detectar cuentas que envían mensajes no solicitados repetidos. Puede que haya falsos positivos. desc_html: Mastodon puede silenciar y reportar cuentas automáticamente usando medidas como detectar cuentas que envían mensajes no solicitados repetidos. Puede que haya falsos positivos.
title: Contra-spam title: Contra-spam
thumbnail: thumbnail:
desc_html: Se usa para muestras con OpenGraph y APIs. Se recomienda 1200x630px desc_html: Se usa para muestras con OpenGraph y APIs. Se recomienda 1200x630px
title: Portada de instancia title: Portada de instancia
timeline_preview: timeline_preview:
desc_html: Mostrar cronología pública en la portada desc_html: Mostrar línea de tiempo pública en la portada
title: Permita acceso no autentificado a la cronología pública title: Previsualización
title: Ajustes del sitio title: Ajustes del sitio
trendable_by_default: trendable_by_default:
desc_html: Afecta a etiquetas que no han sido previamente rechazadas desc_html: Afecta a etiquetas que no han sido previamente rechazadas
title: Permitir que las etiquetas sean tendencia sin revisión previa title: Permitir que las etiquetas sean tendencia sin revisión previa
trends: trends:
desc_html: Mostrar públicamente etiquetas previamente revisadas que son tendencia desc_html: Mostrar públicamente hashtags previamente revisados que son tendencia
title: Etiquetas que son tendencia title: Hashtags de tendencia
statuses: statuses:
back_to_account: Volver a la cuenta back_to_account: Volver a la cuenta
batch: batch:
@ -543,14 +557,14 @@ es:
last_active: Última actividad last_active: Última actividad
most_popular: Más popular most_popular: Más popular
most_recent: Más reciente most_recent: Más reciente
name: Etiqueta name: Hashtag
review: Estado de revisión review: Estado de revisión
reviewed: Revisado reviewed: Revisado
title: Etiquetas title: Etiquetas
trending_right_now: En tendencia ahora mismo trending_right_now: En tendencia ahora mismo
unique_uses_today: "%{count} publicando hoy" unique_uses_today: "%{count} publicando hoy"
unreviewed: No revisado unreviewed: No revisado
updated_msg: Etiquetas actualizadas con éxito updated_msg: Hashtags actualizados exitosamente
title: Administración title: Administración
warning_presets: warning_presets:
add_new: Añadir nuevo add_new: Añadir nuevo
@ -567,7 +581,7 @@ es:
body_remote: Alguien de %{domain} a reportado a %{target} body_remote: Alguien de %{domain} a reportado a %{target}
subject: Nuevo reporte para la %{instance} (#%{id}) subject: Nuevo reporte para la %{instance} (#%{id})
new_trending_tag: new_trending_tag:
body: 'La etiqueta #%{name} es tendencia hoy, pero no ha sido revisada previamente. No se mostrará públicamente a menos que lo permita, o simplemente guarde el formulario evitando volver a ver este mensaje.' body: 'El hashtag #%{name} está en tendencia hoy, pero no ha sido revisado previamente. No se mostrará públicamente a menos que lo permita, o simplemente guarde el formulario como para no volver a ver esto.'
subject: Nuevo hashtag para revisión en %{instance} (#%{name}) subject: Nuevo hashtag para revisión en %{instance} (#%{name})
aliases: aliases:
add_new: Crear alias add_new: Crear alias
@ -577,7 +591,7 @@ es:
remove: Desvincular alias remove: Desvincular alias
appearance: appearance:
advanced_web_interface: Interfaz web avanzada advanced_web_interface: Interfaz web avanzada
advanced_web_interface_hint: 'Si desea utilizar todo el ancho de pantalla, la interfaz web avanzada le permite configurar varias columnas diferentes para ver tanta información al mismo tiempo como quiera: Inicio, notificaciones, cronología federada, cualquier número de listas y etiquetas.' advanced_web_interface_hint: 'Si desea utilizar todo el ancho de pantalla, la interfaz web avanzada le permite configurar varias columnas diferentes para ver tanta información al mismo tiempo como quiera: Inicio, notificaciones, línea de tiempo federada, cualquier número de listas y etiquetas.'
animations_and_accessibility: Animaciones y accesibilidad animations_and_accessibility: Animaciones y accesibilidad
confirmation_dialogs: Diálogos de confirmación confirmation_dialogs: Diálogos de confirmación
discovery: Descubrir discovery: Descubrir
@ -610,9 +624,9 @@ es:
delete_account: Borrar cuenta delete_account: Borrar cuenta
delete_account_html: Si desea eliminar su cuenta, puede <a href="%{path}">proceder aquí</a>. Será pedido de una confirmación. delete_account_html: Si desea eliminar su cuenta, puede <a href="%{path}">proceder aquí</a>. Será pedido de una confirmación.
description: description:
prefix_invited_by_user: "¡@%{name} te invita a unirte a este servidor de Mastodonte!" prefix_invited_by_user: "¡@%{name} te invita a unirte a este servidor de Mastodon!"
prefix_sign_up: "¡Únete a Mastodonte hoy!" prefix_sign_up: "¡Únete a Mastodon hoy!"
suffix: "¡Con una cuenta podrás seguir a gente, publicar novedades e intercambiar mensajes con usuarios de cualquier servidor de Mastodonte y más!" suffix: "¡Con una cuenta podrás seguir a gente, publicar novedades e intercambiar mensajes con usuarios de cualquier servidor de Mastodon y más!"
didnt_get_confirmation: "¿No recibió el correo de confirmación?" didnt_get_confirmation: "¿No recibió el correo de confirmación?"
forgot_password: "¿Olvidaste tu contraseña?" forgot_password: "¿Olvidaste tu contraseña?"
invalid_reset_password_token: El token de reinicio de contraseña es inválido o expiró. Por favor pide uno nuevo. invalid_reset_password_token: El token de reinicio de contraseña es inválido o expiró. Por favor pide uno nuevo.
@ -657,6 +671,9 @@ es:
hint_html: "<strong>Tip:</strong> No volveremos a preguntarte por la contraseña durante la siguiente hora." hint_html: "<strong>Tip:</strong> No volveremos a preguntarte por la contraseña durante la siguiente hora."
invalid_password: Contraseña incorrecta invalid_password: Contraseña incorrecta
prompt: Confirmar contraseña para seguir prompt: Confirmar contraseña para seguir
date:
formats:
default: "%b %d, %Y"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}h" about_x_hours: "%{count}h"
@ -708,7 +725,7 @@ es:
content: Lo sentimos, algo ha funcionado mal por nuestra parte. content: Lo sentimos, algo ha funcionado mal por nuestra parte.
title: Esta página no es correcta title: Esta página no es correcta
'503': La página no se ha podido cargar debido a un fallo temporal del servidor. '503': La página no se ha podido cargar debido a un fallo temporal del servidor.
noscript_html: Para usar la aplicación web de Mastodonte, por favor activa Javascript. Alternativamente, prueba alguna de las <a href="%{apps_path}">aplicaciones nativas</a> para Mastodonte para tu plataforma. noscript_html: Para usar la aplicación web de Mastodon, por favor activa Javascript. Alternativamente, prueba alguna de las <a href="%{apps_path}">aplicaciones nativas</a> para Mastodon para tu plataforma.
existing_username_validator: existing_username_validator:
not_found: no pudo encontrar un usuario local con ese nombre de usuario not_found: no pudo encontrar un usuario local con ese nombre de usuario
not_found_multiple: no pudo encontrar %{usernames} not_found_multiple: no pudo encontrar %{usernames}
@ -729,14 +746,14 @@ es:
featured_tags: featured_tags:
add_new: Añadir nuevo add_new: Añadir nuevo
errors: errors:
limit: Alcanzaste el máximo de etiquetados limit: Ya has alcanzado la cantidad máxima de hashtags
hint_html: "<strong>¿Qué son las etiquetas destacadas?</strong> Se muestran de forma prominente en tu perfil público y permiten a las personas usuarias navegar por tus publicaciones públicas específicamente bajo esas etiquetas. Son una gran herramienta para hacer un seguimiento de obras creativas o proyectos a largo plazo." hint_html: "<strong>¿Qué son las etiquetas destacadas?</strong> Se muestran de forma prominente en tu perfil público y permiten a los usuarios navegar por tus publicaciones públicas específicamente bajo esas etiquetas. Son una gran herramienta para hacer un seguimiento de trabajos creativos o proyectos a largo plazo."
filters: filters:
contexts: contexts:
account: Perfiles account: Perfiles
home: Cronología propia home: Timeline propio
notifications: Notificaciones notifications: Notificaciones
public: Cronología pública public: Timeline público
thread: Conversaciones thread: Conversaciones
edit: edit:
title: Editar filtro title: Editar filtro
@ -755,9 +772,11 @@ es:
resources: Recursos resources: Recursos
trending_now: Tendencia ahora trending_now: Tendencia ahora
generic: generic:
all: Todas all: Todos
changes_saved_msg: "¡Cambios guardados con éxito!" changes_saved_msg: "¡Cambios guardados con éxito!"
copy: Copiar copy: Copiar
delete: Eliminar
edit: Editar
no_batch_actions_available: No hay acciones por lotes disponibles en esta página no_batch_actions_available: No hay acciones por lotes disponibles en esta página
order_by: Ordenar por order_by: Ordenar por
save_changes: Guardar cambios save_changes: Guardar cambios
@ -928,7 +947,11 @@ es:
preferences: preferences:
other: Otros other: Otros
posting_defaults: Configuración por defecto de publicaciones posting_defaults: Configuración por defecto de publicaciones
public_timelines: Cronologías públicas public_timelines: Líneas de tiempo públicas
reactions:
errors:
limit_reached: Límite de reacciones diferentes alcanzado
unrecognized_emoji: no es un emoji conocido
relationships: relationships:
activity: Actividad de la cuenta activity: Actividad de la cuenta
dormant: Inactivo dormant: Inactivo
@ -989,7 +1012,7 @@ es:
weibo: Weibo weibo: Weibo
current_session: Sesión actual current_session: Sesión actual
description: "%{browser} en %{platform}" description: "%{browser} en %{platform}"
explanation: Estos son los navegadores web conectados actualmente en tu cuenta de Mastodonte. explanation: Estos son los navegadores web conectados actualmente en tu cuenta de Mastodon.
ip: IP ip: IP
platforms: platforms:
adobe_air: Adobe Air adobe_air: Adobe Air
@ -1018,7 +1041,7 @@ es:
development: Desarrollo development: Desarrollo
edit_profile: Editar perfil edit_profile: Editar perfil
export: Exportar información export: Exportar información
featured_tags: Etiquetas destacadas featured_tags: Hashtags destacados
identity_proofs: Pruebas de identidad identity_proofs: Pruebas de identidad
import: Importar import: Importar
import_and_export: Importar y exportar import_and_export: Importar y exportar
@ -1042,8 +1065,8 @@ es:
boosted_from_html: Impulsado desde %{acct_link} boosted_from_html: Impulsado desde %{acct_link}
content_warning: 'Alerta de contenido: %{warning}' content_warning: 'Alerta de contenido: %{warning}'
disallowed_hashtags: disallowed_hashtags:
one: 'contenía una etiqueta no permitida: %{tags}' one: 'contenía un hashtag no permitido: %{tags}'
other: 'contenía las etiquetas no permitidas: %{tags}' other: 'contenía los hashtags no permitidos: %{tags}'
language_detection: Detección automática de idioma language_detection: Detección automática de idioma
open_in_web: Abrir en web open_in_web: Abrir en web
over_character_limit: Límite de caracteres de %{max} superado over_character_limit: Límite de caracteres de %{max} superado
@ -1069,7 +1092,7 @@ es:
public: Público public: Público
public_long: Todos pueden ver public_long: Todos pueden ver
unlisted: Público, pero no mostrar en la historia federada unlisted: Público, pero no mostrar en la historia federada
unlisted_long: Todos pueden ver, pero no está listado en las cronologías públicas unlisted_long: Todos pueden ver, pero no está listado en las líneas de tiempo públicas
stream_entries: stream_entries:
pinned: Toot fijado pinned: Toot fijado
reblogged: retooteado reblogged: retooteado
@ -1082,9 +1105,9 @@ es:
<h3 id="collect">¿Qué información recogemos?</h3> <h3 id="collect">¿Qué información recogemos?</h3>
<ul> <ul>
<li><em>Información básica sobre su cuenta</em>: Si se registra en este servidor, se le requerirá un nombre de persona usuaria, una dirección de correo electrónico y una contraseña. Además puede incluir información adicional en el perfil como un nombre de perfil y una biografía, y subir una foto de perfil y una imagen de cabecera. El nombre de usuaria, nombre de perfil, biografía, foto de perfil e imagen de cabecera siempre son visibles públicamente</li> <li><em>Información básica sobre su cuenta</em>: Si se registra en este servidor, se le requerirá un nombre de usuario, una dirección de correo electrónico y una contraseña. Además puede incluir información adicional en el perfil como un nombre de perfil y una biografía, y subir una foto de perfil y una imagen de cabecera. El nombre de usuario, nombre de perfil, biografía, foto de perfil e imagen de cabecera siempre son visibles públicamente</li>
<li><em>Publicaciones, seguimiento y otra información pública</em>: La lista de gente a la que sigue es mostrada públicamente, al igual que sus seguidores. Cuando publica un mensaje, la fecha y hora es almacenada, así como la aplicación desde la cual publicó el mensaje. Los mensajes pueden contener archivos adjuntos multimedia, como imágenes y vídeos. Las publicaciones públicas y no listadas están disponibles públicamente. Cuando destaca una entrada en su perfil, también es información disponible públicamente. Sus publicaciones son entregadas a sus seguidores, en algunos casos significa que son entregadas a diferentes servidores y las copias son almacenadas allí. Cuando elimina publicaciones, esto también se transfiere a sus seguidores. La acción de reenviar o marcar como favorito otra publicación es siempre pública.</li> <li><em>Publicaciones, seguimiento y otra información pública</em>: La lista de gente a la que sigue es mostrada públicamente, al igual que sus seguidores. Cuando publica un mensaje, la fecha y hora es almacenada, así como la aplicación desde la cual publicó el mensaje. Los mensajes pueden contener archivos adjuntos multimedia, como imágenes y vídeos. Las publicaciones públicas y no listadas están disponibles públicamente. Cuando destaca una entrada en su perfil, también es información disponible públicamente. Sus publicaciones son entregadas a sus seguidores, en algunos casos significa que son entregadas a diferentes servidores y las copias son almacenadas allí. Cuando elimina publicaciones, esto también se transfiere a sus seguidores. La acción de rebloguear o marcar como favorito otra publicación es siempre pública.</li>
<li><em>Publicaciones directas y sólo para seguidoras</em>: Todos los mensajes se almacenan y procesan en el servidor. Las publicaciones sólo para seguidoras se entregan a las seguidoras y usuarias que se mencionan en ellas, y los mensajes directos se entregan sólo a las usuarias que se mencionan en ellos. En algunos casos significa que se entregan a diferentes servidores y que las copias se almacenan allí. Hacemos un esfuerzo de buena fe para limitar el acceso a esas publicaciones sólo a las personas autorizadas, pero otros servidores pueden no hacerlo. Por lo tanto, es importante revisar los servidores a los que pertenecen sus seguidoras. Puede cambiar una opción para aprobar y rechazar nuevas seguidoras manualmente en la configuración <em>Por favor, tenga en cuenta que las operadoras del servidor y de cualquier servidor receptor pueden ver dichos mensajes</em>, y que las destinatarias pueden capturarlos, copiarlos o volver a compartirlos de alguna otra manera. <em>No comparta ninguna información peligrosa en Mastodonte.</em></li> <li><em>Publicaciones directas y sólo para seguidores</em>: Todos los mensajes se almacenan y procesan en el servidor. Los mensajes sólo para seguidores se entregan a los seguidores y usuarios que se mencionan en ellos, y los mensajes directos se entregan sólo a los usuarios que se mencionan en ellos. En algunos casos significa que se entregan a diferentes servidores y que las copias se almacenan allí. Hacemos un esfuerzo de buena fe para limitar el acceso a esas publicaciones sólo a las personas autorizadas, pero otros servidores pueden no hacerlo. Por lo tanto, es importante revisar los servidores a los que pertenecen sus seguidores. Puede cambiar una opción para aprobar y rechazar nuevos seguidores manualmente en la configuración <em>Por favor, tenga en cuenta que los operadores del servidor y de cualquier servidor receptor pueden ver dichos mensajes</em>, y que los destinatarios pueden capturarlos, copiarlos o volver a compartirlos de alguna otra manera. <em>No comparta ninguna información peligrosa en Mastodon.</em></li>
<li><em>Direcciones IP y otros metadatos</em>: Al iniciar sesión, registramos la dirección IP desde la que se ha iniciado sesión, así como el nombre de la aplicación de su navegador. Todas las sesiones iniciadas están disponibles para su revisión y revocación en los ajustes. La última dirección IP utilizada se almacena hasta 12 meses. También podemos conservar los registros del servidor que incluyen la dirección IP de cada solicitud a nuestro servidor.</li> <li><em>Direcciones IP y otros metadatos</em>: Al iniciar sesión, registramos la dirección IP desde la que se ha iniciado sesión, así como el nombre de la aplicación de su navegador. Todas las sesiones iniciadas están disponibles para su revisión y revocación en los ajustes. La última dirección IP utilizada se almacena hasta 12 meses. También podemos conservar los registros del servidor que incluyen la dirección IP de cada solicitud a nuestro servidor.</li>
</ul> </ul>
@ -1095,7 +1118,7 @@ es:
<p>Toda la información que obtenemos de usted puede ser utilizada de las siguientes maneras:</p> <p>Toda la información que obtenemos de usted puede ser utilizada de las siguientes maneras:</p>
<ul> <ul>
<li>Para proporcionar la funcionalidad principal de Mastodonte. Sólo puedes interactuar con el contenido de otras personas y publicar tu propio contenido cuando estés conectado. Por ejemplo, puedes seguir a otras personas para ver sus mensajes combinados en tu propia línea de tiempo personalizada.</li> <li>Para proporcionar la funcionalidad principal de Mastodon. Sólo puedes interactuar con el contenido de otras personas y publicar tu propio contenido cuando estés conectado. Por ejemplo, puedes seguir a otras personas para ver sus mensajes combinados en tu propia línea de tiempo personalizada.</li>
<li>Para ayudar a la moderación de la comunidad, por ejemplo, comparando su dirección IP con otras conocidas para determinar la evasión de prohibiciones u otras violaciones.</li> <li>Para ayudar a la moderación de la comunidad, por ejemplo, comparando su dirección IP con otras conocidas para determinar la evasión de prohibiciones u otras violaciones.</li>
<li>La dirección de correo electrónico que nos proporcione podrá utilizarse para enviarle información, notificaciones sobre otras personas que interactúen con su contenido o para enviarle mensajes, así como para responder a consultas y/u otras solicitudes o preguntas.</li> <li>La dirección de correo electrónico que nos proporcione podrá utilizarse para enviarle información, notificaciones sobre otras personas que interactúen con su contenido o para enviarle mensajes, así como para responder a consultas y/u otras solicitudes o preguntas.</li>
</ul> </ul>
@ -1135,9 +1158,9 @@ es:
<p>No vendemos, comerciamos ni transferimos a terceros su información personal identificable. Esto no incluye a los terceros de confianza que nos asisten en la operación de nuestro sitio, en la realización de nuestros negocios o en la prestación de servicios, siempre y cuando dichas partes acuerden mantener la confidencialidad de esta información. También podemos divulgar su información cuando creamos que es apropiado para cumplir con la ley, hacer cumplir las políticas de nuestro sitio, o proteger nuestros u otros derechos, propiedad o seguridad.</p> <p>No vendemos, comerciamos ni transferimos a terceros su información personal identificable. Esto no incluye a los terceros de confianza que nos asisten en la operación de nuestro sitio, en la realización de nuestros negocios o en la prestación de servicios, siempre y cuando dichas partes acuerden mantener la confidencialidad de esta información. También podemos divulgar su información cuando creamos que es apropiado para cumplir con la ley, hacer cumplir las políticas de nuestro sitio, o proteger nuestros u otros derechos, propiedad o seguridad.</p>
<p>Su contenido público puede ser descargado por otros servidores de la red. Tus mensajes públicos y sólo para seguidoras se envían a los servidores donde residen tus seguidoras, y los mensajes directos se envían a los servidores de las destinatarias, en la medida en que dichas seguidoras o destinatarias residan en un servidor diferente.</p> <p>Su contenido público puede ser descargado por otros servidores de la red. Tus mensajes públicos y sólo para seguidores se envían a los servidores donde residen tus seguidores, y los mensajes directos se envían a los servidores de los destinatarios, en la medida en que dichos seguidores o destinatarios residan en un servidor diferente.</p>
<p>Cuando usted autoriza a una aplicación a usar su cuenta, dependiendo del alcance de los permisos que usted apruebe, puede acceder a la información de su perfil público, su lista de seguimiento, sus seguidoras, sus listas, todos sus mensajes y sus favoritas. Las aplicaciones nunca podrán acceder a su dirección de correo electrónico o contraseña.</p> <p>Cuando usted autoriza a una aplicación a usar su cuenta, dependiendo del alcance de los permisos que usted apruebe, puede acceder a la información de su perfil público, su lista de seguimiento, sus seguidores, sus listas, todos sus mensajes y sus favoritos. Las aplicaciones nunca podrán acceder a su dirección de correo electrónico o contraseña.</p>
<hr class="spacer" /> <hr class="spacer" />
@ -1160,9 +1183,9 @@ es:
<p>Adaptado originalmente desde <a href="https://github.com/discourse/discourse">la política de privacidad de Discourse</a>.</p> <p>Adaptado originalmente desde <a href="https://github.com/discourse/discourse">la política de privacidad de Discourse</a>.</p>
title: Términos del Servicio y Políticas de Privacidad de %{instance} title: Términos del Servicio y Políticas de Privacidad de %{instance}
themes: themes:
contrast: Mastodonte (Alto contraste) contrast: Alto contraste
default: Mastodonte (Oscuro) default: Mastodon
mastodon-light: Mastodonte (claro) mastodon-light: Mastodon (claro)
time: time:
formats: formats:
default: "%d de %b del %Y, %H:%M" default: "%d de %b del %Y, %H:%M"
@ -1185,7 +1208,7 @@ es:
wrong_code: "¡El código ingresado es inválido! ¿El dispositivo y tiempo del servidor están correctos?" wrong_code: "¡El código ingresado es inválido! ¿El dispositivo y tiempo del servidor están correctos?"
user_mailer: user_mailer:
backup_ready: backup_ready:
explanation: Has solicitado una copia completa de tu cuenta de Mastodonte. ¡Ya está preparada para descargar! explanation: Has solicitado una copia completa de tu cuenta de Mastodon. ¡Ya está preparada para descargar!
subject: Tu archivo está preparado para descargar subject: Tu archivo está preparado para descargar
title: Descargar archivo title: Descargar archivo
warning: warning:
@ -1211,15 +1234,15 @@ es:
edit_profile_step: Puedes personalizar tu perfil subiendo un avatar, una cabecera, cambiando tu nombre de usuario y más cosas. Si quieres revisar a tus nuevos seguidores antes de que se les permita seguirte, puedes bloquear tu cuenta. edit_profile_step: Puedes personalizar tu perfil subiendo un avatar, una cabecera, cambiando tu nombre de usuario y más cosas. Si quieres revisar a tus nuevos seguidores antes de que se les permita seguirte, puedes bloquear tu cuenta.
explanation: Aquí hay algunos consejos para empezar explanation: Aquí hay algunos consejos para empezar
final_action: Empezar a publicar final_action: Empezar a publicar
final_step: '¡Empieza a publicar! Incluso sin seguidores, tus mensajes públicos pueden ser vistos por otros, por ejemplo en la ristra teporal local y con "etiquetas". Podrías querer presentarte con la "etiqueta" #presentaciones o #nuevascuentas.' final_step: '¡Empieza a publicar! Incluso sin seguidores, tus mensajes públicos pueden ser vistos por otros, por ejemplo en la linea de tiempo local y con "hashtags". Podrías querer introducirte con el "hashtag" #introductions.'
full_handle: Su sobrenombre completo full_handle: Su sobrenombre completo
full_handle_hint: Esto es lo que le dirías a tus amigos para que ellos puedan enviarte mensajes o seguirte desde otra instancia. full_handle_hint: Esto es lo que le dirías a tus amigos para que ellos puedan enviarte mensajes o seguirte desde otra instancia.
review_preferences_action: Cambiar preferencias review_preferences_action: Cambiar preferencias
review_preferences_step: Asegúrate de poner tus preferencias, como que correos te gustaría recibir, o que nivel de privacidad te gustaría que tus publicaciones tengan por defecto. Si no tienes mareos, podrías elegir habilitar la reproducción automática de "GIFs". review_preferences_step: Asegúrate de poner tus preferencias, como que correos te gustaría recibir, o que nivel de privacidad te gustaría que tus publicaciones tengan por defecto. Si no tienes mareos, podrías elegir habilitar la reproducción automática de "GIFs".
subject: Bienvenido a Mastodonte subject: Bienvenido a Mastodon
tip_federated_timeline: La cronología federada es una vista de la red de Mastodonte. Pero solo incluye gente que tus vecinos están siguiendo, así que no está completa. tip_federated_timeline: La línea de tiempo federada es una vista de la red de Mastodon. Pero solo incluye gente que tus vecinos están siguiendo, así que no está completa.
tip_following: Sigues a tus administradores de servidor por defecto. Para encontrar más gente interesante, revisa las cronologías local y federada. tip_following: Sigues a tus administradores de servidor por defecto. Para encontrar más gente interesante, revisa las lineas de tiempo local y federada.
tip_local_timeline: La cronología local is una vista de la gente en %{instance}. Estos son tus vecinos inmediatos! tip_local_timeline: La linea de tiempo local is una vista de la gente en %{instance}. Estos son tus vecinos inmediatos!
tip_mobile_webapp: Si el navegador de tu dispositivo móvil ofrece agregar Mastodon a tu página de inicio, puedes recibir notificaciones. Actúa como una aplicación nativa en muchas formas! tip_mobile_webapp: Si el navegador de tu dispositivo móvil ofrece agregar Mastodon a tu página de inicio, puedes recibir notificaciones. Actúa como una aplicación nativa en muchas formas!
tips: Consejos tips: Consejos
title: Te damos la bienvenida a bordo, %{name}! title: Te damos la bienvenida a bordo, %{name}!
@ -1231,5 +1254,5 @@ es:
seamless_external_login: Has iniciado sesión desde un servicio externo, así que los ajustes de contraseña y correo no están disponibles. seamless_external_login: Has iniciado sesión desde un servicio externo, así que los ajustes de contraseña y correo no están disponibles.
signed_in_as: 'Sesión iniciada como:' signed_in_as: 'Sesión iniciada como:'
verification: verification:
explanation_html: 'Puedes <strong> verificarte a ti mismo como el dueño de los links en los metadatos de tu perfil </strong>. Para eso, el sitio vinculado debe contener un vínculo a tu perfil de Mastodonte. El vínculo en tu sitio <strong> debe </strong> tener un atributo <code> rel="me"</code>. El texto del vínculo no importa. Aquí un ejemplo:' explanation_html: 'Puedes <strong> verificarte a ti mismo como el dueño de los links en los metadatos de tu perfil </strong>. Para eso, el sitio vinculado debe contener un vínculo a tu perfil de Mastodon. El vínculo en tu sitio <strong> debe </strong> tener un atributo <code> rel="me"</code>. El texto del vínculo no importa. Aquí un ejemplo:'
verification: Verificación verification: Verificación

View file

@ -198,11 +198,13 @@ eu:
change_email_user: "%{name}(e)k %{target}(r)en e-mail helbidea aldatu du" change_email_user: "%{name}(e)k %{target}(r)en e-mail helbidea aldatu du"
confirm_user: "%{name}(e)k %{target}(r)en e-mail helbidea berretsi du" confirm_user: "%{name}(e)k %{target}(r)en e-mail helbidea berretsi du"
create_account_warning: "%{name}-k abisua bidali dio %{target}-ri" create_account_warning: "%{name}-k abisua bidali dio %{target}-ri"
create_announcement: "%{name}(e)k %{target}(e)rako iragarpen berria sortu du"
create_custom_emoji: "%{name}(e)k emoji berria kargatu du %{target}" create_custom_emoji: "%{name}(e)k emoji berria kargatu du %{target}"
create_domain_allow: "%{name}(e)k %{target} domeinua zerrenda zurian zartu du" create_domain_allow: "%{name}(e)k %{target} domeinua zerrenda zurian zartu du"
create_domain_block: "%{name}(e)k %{target} domeinua blokeatu du" create_domain_block: "%{name}(e)k %{target} domeinua blokeatu du"
create_email_domain_block: "%{name}(e)k %{target} e-mail helbideen domeinua zerrenda beltzean sartu du" create_email_domain_block: "%{name}(e)k %{target} e-mail helbideen domeinua zerrenda beltzean sartu du"
demote_user: "%{name}(e)k %{target} mailaz jaitsi du" demote_user: "%{name}(e)k %{target} mailaz jaitsi du"
destroy_announcement: "%{name}(e)k %{target}(e)rako iragarpena kendu du"
destroy_custom_emoji: "%{name} erabiltzaileak %{target} emojia suntsitu du" destroy_custom_emoji: "%{name} erabiltzaileak %{target} emojia suntsitu du"
destroy_domain_allow: "%{name}(e)k %{target} domeinua zerrenda zuritik kendu du" destroy_domain_allow: "%{name}(e)k %{target} domeinua zerrenda zuritik kendu du"
destroy_domain_block: "%{name}(e)k %{target} domeinua desblokeatu du" destroy_domain_block: "%{name}(e)k %{target} domeinua desblokeatu du"
@ -224,10 +226,22 @@ eu:
unassigned_report: "%{name}(e)k %{target} txotenaren esleipena atzera bota du" unassigned_report: "%{name}(e)k %{target} txotenaren esleipena atzera bota du"
unsilence_account: "%{name}(e)k %{target} isilarazteko agindua kendu du" unsilence_account: "%{name}(e)k %{target} isilarazteko agindua kendu du"
unsuspend_account: "%{name}(e)k %{target} kontuaren kanporaketa atzera bota du" unsuspend_account: "%{name}(e)k %{target} kontuaren kanporaketa atzera bota du"
update_announcement: "%{name}(e)k %{target}(e)rako iragarpena eguneratu du du"
update_custom_emoji: "%{name}(e)k %{target} emoji-a eguneratu du" update_custom_emoji: "%{name}(e)k %{target} emoji-a eguneratu du"
update_status: "%{name} (e)k %{target}(r)en mezua aldatu du" update_status: "%{name} (e)k %{target}(r)en mezua aldatu du"
deleted_status: "(ezabatutako mezua)" deleted_status: "(ezabatutako mezua)"
title: Auditoria-egunkaria title: Auditoria-egunkaria
announcements:
edit:
title: Editatu iragarpena
empty: Ez da iragarpenik aurkitu.
live: Zuzenean
new:
create: Sortu iragarpena
title: Iragarpen berria
published: Argitaratua
time_range: Denbora-tartea
title: Iragarpenak
custom_emojis: custom_emojis:
assign_category: Esleitu kategoria assign_category: Esleitu kategoria
by_domain: Domeinua by_domain: Domeinua
@ -372,6 +386,8 @@ eu:
title: Gonbidapenak title: Gonbidapenak
pending_accounts: pending_accounts:
title: Zain dauden kontuak (%{count}) title: Zain dauden kontuak (%{count})
relationships:
title: "%{acct}(e)ren erlazioak"
relays: relays:
add_new: Gehitu hari errelea add_new: Gehitu hari errelea
delete: Ezabatu delete: Ezabatu
@ -655,6 +671,9 @@ eu:
hint_html: "<strong>Oharra:</strong> Ez dizugu pasahitza berriro eskatuko ordu batez." hint_html: "<strong>Oharra:</strong> Ez dizugu pasahitza berriro eskatuko ordu batez."
invalid_password: Pasahitz baliogabea invalid_password: Pasahitz baliogabea
prompt: Berretsi pasahitza jarraitzeko prompt: Berretsi pasahitza jarraitzeko
date:
formats:
default: "%Y(e)ko %b %d"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}h" about_x_hours: "%{count}h"
@ -731,6 +750,7 @@ eu:
hint_html: "<strong>Zer dira nabarmendutako traolak?</strong> Zure profilean toki nabarmendu batean agertzen dira eta jendeari traola hau daukaten mezu publikoak arakatzea ahalbidetzen diote. Sormen lana edo epe luzerako proiektuak jarraitzeko primerakoak dira." hint_html: "<strong>Zer dira nabarmendutako traolak?</strong> Zure profilean toki nabarmendu batean agertzen dira eta jendeari traola hau daukaten mezu publikoak arakatzea ahalbidetzen diote. Sormen lana edo epe luzerako proiektuak jarraitzeko primerakoak dira."
filters: filters:
contexts: contexts:
account: Profilak
home: Hasierako denbora-lerroa home: Hasierako denbora-lerroa
notifications: Jakinarazpenak notifications: Jakinarazpenak
public: Denbora-lerro publikoak public: Denbora-lerro publikoak
@ -755,6 +775,8 @@ eu:
all: Denak all: Denak
changes_saved_msg: Aldaketak ongi gorde dira! changes_saved_msg: Aldaketak ongi gorde dira!
copy: Kopiatu copy: Kopiatu
delete: Ezabatu
edit: Editatu
no_batch_actions_available: Ez dago ekintza masiborik orri honetan eskuragarri no_batch_actions_available: Ez dago ekintza masiborik orri honetan eskuragarri
order_by: Ordenatze-irizpidea order_by: Ordenatze-irizpidea
save_changes: Gorde aldaketak save_changes: Gorde aldaketak
@ -926,11 +948,15 @@ eu:
other: Denetarik other: Denetarik
posting_defaults: Bidalketarako lehenetsitakoak posting_defaults: Bidalketarako lehenetsitakoak
public_timelines: Denbora-lerro publikoak public_timelines: Denbora-lerro publikoak
reactions:
errors:
unrecognized_emoji: ez da emoji ezaguna
relationships: relationships:
activity: Kontuaren aktibitatea activity: Kontuaren aktibitatea
dormant: Ez aktiboa dormant: Ez aktiboa
followers: Jarraitzaileak followers: Jarraitzaileak
following: Jarraitzen following: Jarraitzen
invited: Gonbidatuta
last_active: Azkenekoz aktiboa last_active: Azkenekoz aktiboa
most_recent: Azkenak most_recent: Azkenak
moved: Lekuz aldatua moved: Lekuz aldatua

View file

@ -200,11 +200,13 @@ hu:
change_email_user: "%{name} megváltoztatta %{target} felhasználó e-mail címét" change_email_user: "%{name} megváltoztatta %{target} felhasználó e-mail címét"
confirm_user: "%{name} megerősítette e-mail címét: %{target}" confirm_user: "%{name} megerősítette e-mail címét: %{target}"
create_account_warning: "%{name} figyelmeztetést küldött %{target} felhasználónak" create_account_warning: "%{name} figyelmeztetést küldött %{target} felhasználónak"
create_announcement: "%{name} új közleményt hozott létre %{target}"
create_custom_emoji: "%{name} új emojit töltött fel: %{target}" create_custom_emoji: "%{name} új emojit töltött fel: %{target}"
create_domain_allow: "%{name} engedélyező listára vette %{target} domaint" create_domain_allow: "%{name} engedélyező listára vette %{target} domaint"
create_domain_block: "%{name} letiltotta az alábbi domaint: %{target}" create_domain_block: "%{name} letiltotta az alábbi domaint: %{target}"
create_email_domain_block: "%{name} feketelistára tette az alábbi e-mail domaint: %{target}" create_email_domain_block: "%{name} feketelistára tette az alábbi e-mail domaint: %{target}"
demote_user: "%{name} lefokozta az alábbi felhasználót: %{target}" demote_user: "%{name} lefokozta az alábbi felhasználót: %{target}"
destroy_announcement: "%{name} törölte a közleményt %{target}"
destroy_custom_emoji: "%{name} törölte az emojit: %{target}" destroy_custom_emoji: "%{name} törölte az emojit: %{target}"
destroy_domain_allow: "%{name} leszedte %{target} domaint az engedélyező listáról" destroy_domain_allow: "%{name} leszedte %{target} domaint az engedélyező listáról"
destroy_domain_block: "%{name} engedélyezte az alábbi domaint: %{target}" destroy_domain_block: "%{name} engedélyezte az alábbi domaint: %{target}"
@ -226,10 +228,22 @@ hu:
unassigned_report: "%{name} törölte a %{target} bejelentés hozzárendelését" unassigned_report: "%{name} törölte a %{target} bejelentés hozzárendelését"
unsilence_account: "%{name} feloldotta a némítást %{target} felhasználói fiókján" unsilence_account: "%{name} feloldotta a némítást %{target} felhasználói fiókján"
unsuspend_account: "%{name} feloldotta %{target} felhasználói fiókjának felfüggesztését" unsuspend_account: "%{name} feloldotta %{target} felhasználói fiókjának felfüggesztését"
update_announcement: "%{name} frissítette a közleményt %{target}"
update_custom_emoji: "%{name} frissítette az alábbi emojit: %{target}" update_custom_emoji: "%{name} frissítette az alábbi emojit: %{target}"
update_status: "%{name} frissítette %{target} felhasználó tülkjét" update_status: "%{name} frissítette %{target} felhasználó tülkjét"
deleted_status: "(törölt tülk)" deleted_status: "(törölt tülk)"
title: Audit napló title: Audit napló
announcements:
edit:
title: Közlemény szerkesztése
empty: Nincs közlemény.
live: Élő
new:
create: Közlemény létrehozása
title: Új közlemény
published: Közzétéve
time_range: Időintervallum
title: Közlemények
custom_emojis: custom_emojis:
assign_category: Kategóriák assign_category: Kategóriák
by_domain: Domain by_domain: Domain
@ -374,6 +388,8 @@ hu:
title: Meghívások title: Meghívások
pending_accounts: pending_accounts:
title: Függőben lévő fiókok (%{count}) title: Függőben lévő fiókok (%{count})
relationships:
title: "%{acct} kapcsolatai"
relays: relays:
add_new: Új relé hozzáadása add_new: Új relé hozzáadása
delete: Törlés delete: Törlés
@ -657,6 +673,9 @@ hu:
hint_html: "<strong>Hasznos:</strong> Nem fogjuk megint a jelszavadat kérdezni a következő órában." hint_html: "<strong>Hasznos:</strong> Nem fogjuk megint a jelszavadat kérdezni a következő órában."
invalid_password: Érvénytelen jelszó invalid_password: Érvénytelen jelszó
prompt: Add meg a jelszót a folytatáshoz prompt: Add meg a jelszót a folytatáshoz
date:
formats:
default: "%Y.%b.%d."
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}ó" about_x_hours: "%{count}ó"
@ -733,6 +752,7 @@ hu:
hint_html: "<strong>Mik a kiemelt hashtagek?</strong> Ezek állandóan megjelennek a nyilvános profilodon és lehetővé teszik, hogy mások kifejezetten az ezekhez tartozó tülkjeidet böngésszék. Jó eszköz ez kreatív munkák vagy hosszútávú projektek nyomonkövetésére." hint_html: "<strong>Mik a kiemelt hashtagek?</strong> Ezek állandóan megjelennek a nyilvános profilodon és lehetővé teszik, hogy mások kifejezetten az ezekhez tartozó tülkjeidet böngésszék. Jó eszköz ez kreatív munkák vagy hosszútávú projektek nyomonkövetésére."
filters: filters:
contexts: contexts:
account: Profil
home: Saját idővonal home: Saját idővonal
notifications: Értesítések notifications: Értesítések
public: Nyilvános idővonalak public: Nyilvános idővonalak
@ -757,6 +777,8 @@ hu:
all: Mind all: Mind
changes_saved_msg: A változásokat elmentettük! changes_saved_msg: A változásokat elmentettük!
copy: Másolás copy: Másolás
delete: Törlés
edit: Szerkesztés
no_batch_actions_available: Ezen az oldalon nem elérhetőek kötegelt műveletek no_batch_actions_available: Ezen az oldalon nem elérhetőek kötegelt műveletek
order_by: Rendezés order_by: Rendezés
save_changes: Változások mentése save_changes: Változások mentése
@ -928,11 +950,15 @@ hu:
other: Egyéb other: Egyéb
posting_defaults: Tülkölés alapértelmezései posting_defaults: Tülkölés alapértelmezései
public_timelines: Nyilvános idővonalak public_timelines: Nyilvános idővonalak
reactions:
errors:
unrecognized_emoji: nem ismert emoji
relationships: relationships:
activity: Fiók aktivitás activity: Fiók aktivitás
dormant: Elhagyott dormant: Elhagyott
followers: Követők followers: Követők
following: Követve following: Követve
invited: Meghívva
last_active: Utoljára aktív last_active: Utoljára aktív
most_recent: Legutóbbi most_recent: Legutóbbi
moved: Átköltöztetve moved: Átköltöztetve

View file

@ -194,11 +194,13 @@ ja:
change_email_user: "%{name} さんが %{target} さんのメールアドレスを変更しました" change_email_user: "%{name} さんが %{target} さんのメールアドレスを変更しました"
confirm_user: "%{name} さんが %{target} さんのメールアドレスを確認済みにしました" confirm_user: "%{name} さんが %{target} さんのメールアドレスを確認済みにしました"
create_account_warning: "%{name} さんが %{target} さんに警告メールを送信しました" create_account_warning: "%{name} さんが %{target} さんに警告メールを送信しました"
create_announcement: "%{name} さんが新しいお知らせ %{target} を作成しました"
create_custom_emoji: "%{name} さんがカスタム絵文字 %{target} を追加しました" create_custom_emoji: "%{name} さんがカスタム絵文字 %{target} を追加しました"
create_domain_allow: "%{name} さんがドメイン %{target} をドメイン用ホワイトリストに追加しました" create_domain_allow: "%{name} さんがドメイン %{target} をドメイン用ホワイトリストに追加しました"
create_domain_block: "%{name} さんがドメイン %{target} をブロックしました" create_domain_block: "%{name} さんがドメイン %{target} をブロックしました"
create_email_domain_block: "%{name} さんがドメイン %{target} をメールアドレス用ブラックリストに追加しました" create_email_domain_block: "%{name} さんがドメイン %{target} をメールアドレス用ブラックリストに追加しました"
demote_user: "%{name} さんが %{target} さんを降格しました" demote_user: "%{name} さんが %{target} さんを降格しました"
destroy_announcement: "%{name} さんがお知らせ %{target} を削除しました"
destroy_custom_emoji: "%{name} さんがカスタム絵文字 %{target} を削除しました" destroy_custom_emoji: "%{name} さんがカスタム絵文字 %{target} を削除しました"
destroy_domain_allow: "%{name} さんがドメイン %{target} をドメイン用ホワイトリストから外しました" destroy_domain_allow: "%{name} さんがドメイン %{target} をドメイン用ホワイトリストから外しました"
destroy_domain_block: "%{name} さんがドメイン %{target} のブロックを外しました" destroy_domain_block: "%{name} さんがドメイン %{target} のブロックを外しました"
@ -220,12 +222,22 @@ ja:
unassigned_report: "%{name} さんが通報 %{target} の担当を外しました" unassigned_report: "%{name} さんが通報 %{target} の担当を外しました"
unsilence_account: "%{name} さんが %{target} さんのサイレンスを解除しました" unsilence_account: "%{name} さんが %{target} さんのサイレンスを解除しました"
unsuspend_account: "%{name} さんが %{target} さんの停止を解除しました" unsuspend_account: "%{name} さんが %{target} さんの停止を解除しました"
update_announcement: "%{name} さんがお知らせ %{target} を更新しました"
update_custom_emoji: "%{name} さんがカスタム絵文字 %{target} を更新しました" update_custom_emoji: "%{name} さんがカスタム絵文字 %{target} を更新しました"
update_status: "%{name} さんが %{target} さんの投稿を更新しました" update_status: "%{name} さんが %{target} さんの投稿を更新しました"
deleted_status: "(削除済)" deleted_status: "(削除済)"
title: 操作履歴 title: 操作履歴
announcements: announcements:
title: 告知 edit:
title: お知らせを編集
empty: お知らせはありません
live: 公開中
new:
create: お知らせを作成
title: お知らせを追加
published: 公開日時
time_range: 期間
title: お知らせ
custom_emojis: custom_emojis:
assign_category: カテゴリーを割り当て assign_category: カテゴリーを割り当て
by_domain: ドメイン by_domain: ドメイン
@ -368,6 +380,8 @@ ja:
title: 招待 title: 招待
pending_accounts: pending_accounts:
title: 承認待ちアカウント (%{count}) title: 承認待ちアカウント (%{count})
relationships:
title: "%{acct} さんのフォロー・フォロワー"
relays: relays:
add_new: リレーを追加 add_new: リレーを追加
delete: 削除 delete: 削除
@ -649,6 +663,9 @@ ja:
hint_html: 以後 1 時間はパスワードの再入力を求めません hint_html: 以後 1 時間はパスワードの再入力を求めません
invalid_password: パスワードが間違っています invalid_password: パスワードが間違っています
prompt: 続行するにはパスワードを入力してください prompt: 続行するにはパスワードを入力してください
date:
formats:
default: "%Y年%m月%d日"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}時間" about_x_hours: "%{count}時間"
@ -725,6 +742,7 @@ ja:
hint_html: "<strong>注目のハッシュタグとは?</strong>プロフィールページに目立つ形で表示され、そのハッシュタグのついたあなたの公開投稿だけを抽出して閲覧できるようにします。クリエイティブな仕事や長期的なプロジェクトを追うのに優れた機能です。" hint_html: "<strong>注目のハッシュタグとは?</strong>プロフィールページに目立つ形で表示され、そのハッシュタグのついたあなたの公開投稿だけを抽出して閲覧できるようにします。クリエイティブな仕事や長期的なプロジェクトを追うのに優れた機能です。"
filters: filters:
contexts: contexts:
account: プロフィール
home: ホームタイムライン home: ホームタイムライン
notifications: 通知 notifications: 通知
public: 公開タイムライン public: 公開タイムライン
@ -919,11 +937,16 @@ ja:
other: その他 other: その他
posting_defaults: デフォルトの投稿設定 posting_defaults: デフォルトの投稿設定
public_timelines: 公開タイムライン public_timelines: 公開タイムライン
reactions:
errors:
limit_reached: リアクションの種類が上限に達しました
unrecognized_emoji: 認識できない絵文字
relationships: relationships:
activity: 活動 activity: 活動
dormant: 非アクティブ dormant: 非アクティブ
followers: フォロワー followers: フォロワー
following: フォロー中 following: フォロー中
invited: 招待済み
last_active: 最後の活動 last_active: 最後の活動
most_recent: 新着 most_recent: 新着
moved: 引っ越し済み moved: 引っ越し済み
@ -988,7 +1011,7 @@ ja:
firefox_os: Firefox OS firefox_os: Firefox OS
ios: iOS ios: iOS
linux: Linux linux: Linux
mac: Mac mac: macOS
other: 不明なプラットフォーム other: 不明なプラットフォーム
windows: Windows windows: Windows
windows_mobile: Windows Mobile windows_mobile: Windows Mobile

View file

@ -372,6 +372,8 @@ kk:
title: Шақырулар title: Шақырулар
pending_accounts: pending_accounts:
title: Күтілген аккаунттар (%{count}) title: Күтілген аккаунттар (%{count})
relationships:
title: "%{acct} байланыстары"
relays: relays:
add_new: Жаңа арна қосу add_new: Жаңа арна қосу
delete: Өшіру delete: Өшіру
@ -915,11 +917,15 @@ kk:
other: Басқа other: Басқа
posting_defaults: Пост жазу негіздері posting_defaults: Пост жазу негіздері
public_timelines: Ашық таймлайндар public_timelines: Ашық таймлайндар
reactions:
errors:
limit_reached: Түрлі реакциялар лимиті толды
relationships: relationships:
activity: Аккаунт белсенділігі activity: Аккаунт белсенділігі
dormant: Ұйқысыз dormant: Ұйқысыз
followers: Оқырмандар followers: Оқырмандар
following: Жазылғандары following: Жазылғандары
invited: Шақырылды
last_active: Соңғы белсенділік last_active: Соңғы белсенділік
most_recent: Ең соңғы most_recent: Ең соңғы
moved: Көшірілді moved: Көшірілді

View file

@ -194,11 +194,13 @@ ko:
change_email_user: "%{name}이 %{target}의 이메일 주소를 변경했습니다" change_email_user: "%{name}이 %{target}의 이메일 주소를 변경했습니다"
confirm_user: "%{name}이 %{target}의 이메일 주소를 컨펌했습니다" confirm_user: "%{name}이 %{target}의 이메일 주소를 컨펌했습니다"
create_account_warning: "%{name}가 %{target}에게 경고 보냄" create_account_warning: "%{name}가 %{target}에게 경고 보냄"
create_announcement: "%{name} 님이 새 공지 %{target}을 만들었습니다"
create_custom_emoji: "%{name}이 새로운 에모지 %{target}를 추가했습니다" create_custom_emoji: "%{name}이 새로운 에모지 %{target}를 추가했습니다"
create_domain_allow: "%{name} 님이 %{target} 도메인을 화이트리스트에 넣었습니다" create_domain_allow: "%{name} 님이 %{target} 도메인을 화이트리스트에 넣었습니다"
create_domain_block: "%{name}이 도메인 %{target}를 차단했습니다" create_domain_block: "%{name}이 도메인 %{target}를 차단했습니다"
create_email_domain_block: "%{name}이 이메일 도메인 %{target}를 차단했습니다" create_email_domain_block: "%{name}이 이메일 도메인 %{target}를 차단했습니다"
demote_user: "%{name}이 %{target}을 강등했습니다" demote_user: "%{name}이 %{target}을 강등했습니다"
destroy_announcement: "%{name} 님이 공지 %{target}을 삭제했습니다"
destroy_custom_emoji: "%{name}이 %{target} 에모지를 삭제함" destroy_custom_emoji: "%{name}이 %{target} 에모지를 삭제함"
destroy_domain_allow: "%{name} 님이 %{target} 도메인을 화이트리스트에서 제거하였습니다" destroy_domain_allow: "%{name} 님이 %{target} 도메인을 화이트리스트에서 제거하였습니다"
destroy_domain_block: "%{name}이 도메인 %{target}의 차단을 해제했습니다" destroy_domain_block: "%{name}이 도메인 %{target}의 차단을 해제했습니다"
@ -220,10 +222,22 @@ ko:
unassigned_report: "%{name}이 리포트 %{target}을 할당 해제했습니다" unassigned_report: "%{name}이 리포트 %{target}을 할당 해제했습니다"
unsilence_account: "%{name}이 %{target}에 대한 침묵을 해제했습니다" unsilence_account: "%{name}이 %{target}에 대한 침묵을 해제했습니다"
unsuspend_account: "%{name}이 %{target}에 대한 정지를 해제했습니다" unsuspend_account: "%{name}이 %{target}에 대한 정지를 해제했습니다"
update_announcement: "%{name} 님이 공지 %{target}을 갱신했습니다"
update_custom_emoji: "%{name}이 에모지 %{target}를 업데이트 했습니다" update_custom_emoji: "%{name}이 에모지 %{target}를 업데이트 했습니다"
update_status: "%{name}이 %{target}의 상태를 업데이트 했습니다" update_status: "%{name}이 %{target}의 상태를 업데이트 했습니다"
deleted_status: "(삭제됨)" deleted_status: "(삭제됨)"
title: 감사 기록 title: 감사 기록
announcements:
edit:
title: 공지사항 수정
empty: 공지를 찾을 수 없습니다.
live: 진행 중
new:
create: 공지사항 생성
title: 새 공지사항
published: 발행됨
time_range: 시간 범위
title: 공지사항
custom_emojis: custom_emojis:
assign_category: 분류 지정 assign_category: 분류 지정
by_domain: 도메인 by_domain: 도메인
@ -368,6 +382,8 @@ ko:
title: 초대 title: 초대
pending_accounts: pending_accounts:
title: 대기중인 계정 (%{count}) title: 대기중인 계정 (%{count})
relationships:
title: "%{acct}의 관계"
relays: relays:
add_new: 릴레이 추가 add_new: 릴레이 추가
delete: 삭제 delete: 삭제
@ -649,6 +665,9 @@ ko:
hint_html: "<strong>팁:</strong> 한 시간 동안 다시 암호를 묻지 않을 것입니다." hint_html: "<strong>팁:</strong> 한 시간 동안 다시 암호를 묻지 않을 것입니다."
invalid_password: 잘못된 암호 invalid_password: 잘못된 암호
prompt: 계속하려면 암호 확인 prompt: 계속하려면 암호 확인
date:
formats:
default: "%Y-%b-%d"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}시간" about_x_hours: "%{count}시간"
@ -725,6 +744,7 @@ ko:
hint_html: "<strong>추천 해시태그가 무엇이죠?</strong> 당신의 공개 프로필 페이지에 눈에 띄게 표현 되며 사람들이 그 해시태그를 포함한 당신의 글을 찾아 볼 수 있도록 합니다. 창작활동이나 긴 기간을 가지는 프로젝트를 쭉 따라가기에 좋은 도구입니다." hint_html: "<strong>추천 해시태그가 무엇이죠?</strong> 당신의 공개 프로필 페이지에 눈에 띄게 표현 되며 사람들이 그 해시태그를 포함한 당신의 글을 찾아 볼 수 있도록 합니다. 창작활동이나 긴 기간을 가지는 프로젝트를 쭉 따라가기에 좋은 도구입니다."
filters: filters:
contexts: contexts:
account: 프로필
home: 홈 타임라인 home: 홈 타임라인
notifications: 알림 notifications: 알림
public: 퍼블릭 타임라인 public: 퍼블릭 타임라인
@ -749,6 +769,8 @@ ko:
all: 모두 all: 모두
changes_saved_msg: 정상적으로 변경되었습니다! changes_saved_msg: 정상적으로 변경되었습니다!
copy: 복사 copy: 복사
delete: 삭제
edit: 수정
no_batch_actions_available: 이 페이지에서 수행할 수 있는 일괄작업이 없습니다 no_batch_actions_available: 이 페이지에서 수행할 수 있는 일괄작업이 없습니다
order_by: 순서 order_by: 순서
save_changes: 변경 사항을 저장 save_changes: 변경 사항을 저장
@ -916,6 +938,10 @@ ko:
other: 기타 other: 기타
posting_defaults: 게시물 기본설정 posting_defaults: 게시물 기본설정
public_timelines: 공개 타임라인 public_timelines: 공개 타임라인
reactions:
errors:
limit_reached: 다른 리액션 제한에 도달했습니다
unrecognized_emoji: 인식 되지 않은 에모지입니다
relationships: relationships:
activity: 계정 활동 activity: 계정 활동
dormant: 휴면 dormant: 휴면

View file

@ -21,6 +21,9 @@ nn:
federation_hint_html: Med ein konto på %{instance} kan du fylgja folk på kva som helst slags Mastod-tenar og meir. federation_hint_html: Med ein konto på %{instance} kan du fylgja folk på kva som helst slags Mastod-tenar og meir.
get_apps: Prøv ein mobilapp get_apps: Prøv ein mobilapp
hosted_on: "%{domain} er vert for Mastodon" hosted_on: "%{domain} er vert for Mastodon"
instance_actor_flash: 'Denne brukeren er en virtuell aktør brukt til å representere selve serveren og ingen individuell bruker. Det brukes til foreningsformål og bør ikke blokkeres med mindre du vil blokkere hele instansen, hvor domeneblokkering bør brukes i stedet.
'
learn_more: Lær meir learn_more: Lær meir
privacy_policy: Personvernsreglar privacy_policy: Personvernsreglar
see_whats_happening: Sjå kva som skjer see_whats_happening: Sjå kva som skjer
@ -191,14 +194,17 @@ nn:
whitelisted: Kvitlista whitelisted: Kvitlista
action_logs: action_logs:
actions: actions:
assigned_to_self_report: "%{name} tilegnet rapport %{target} til seg selv"
change_email_user: "%{name} endra e-postadressa til brukaren %{target}" change_email_user: "%{name} endra e-postadressa til brukaren %{target}"
confirm_user: "%{name} stadfesta e-postadressa til brukaren %{target}" confirm_user: "%{name} stadfesta e-postadressa til brukaren %{target}"
create_account_warning: "%{name} sende ei åtvaring til %{target}" create_account_warning: "%{name} sende ei åtvaring til %{target}"
create_announcement: "%{name} laget en ny kunngjøring %{target}"
create_custom_emoji: "%{name} lasta opp eit nytt kjensleteikn %{target}" create_custom_emoji: "%{name} lasta opp eit nytt kjensleteikn %{target}"
create_domain_allow: "%{name} kvitlista domenet %{target}" create_domain_allow: "%{name} kvitlista domenet %{target}"
create_domain_block: "%{name} blokkerte domenet %{target}" create_domain_block: "%{name} blokkerte domenet %{target}"
create_email_domain_block: "%{name} svartelista e-postdomenet %{target}" create_email_domain_block: "%{name} svartelista e-postdomenet %{target}"
demote_user: "%{name} degraderte brukaren %{target}" demote_user: "%{name} degraderte brukaren %{target}"
destroy_announcement: "%{name} slettet kunngjøring %{target}"
destroy_custom_emoji: "%{name} utsletta kjensleteiknet %{target}" destroy_custom_emoji: "%{name} utsletta kjensleteiknet %{target}"
destroy_domain_allow: "%{name} fjerna domenet %{target} frå kvitliste" destroy_domain_allow: "%{name} fjerna domenet %{target} frå kvitliste"
destroy_domain_block: "%{name} slutta å blokkera domenet %{target}" destroy_domain_block: "%{name} slutta å blokkera domenet %{target}"
@ -217,12 +223,25 @@ nn:
resolve_report: "%{name} løyste ein rapport %{target}" resolve_report: "%{name} løyste ein rapport %{target}"
silence_account: "%{name} målbatt %{target} sin konto" silence_account: "%{name} målbatt %{target} sin konto"
suspend_account: "%{name} utviste %{target} sin konto" suspend_account: "%{name} utviste %{target} sin konto"
unassigned_report: "%{name} avtilegnet rapport %{target}"
unsilence_account: "%{name} fjernet forstummingen av %{target}s konto" unsilence_account: "%{name} fjernet forstummingen av %{target}s konto"
unsuspend_account: "%{name} utviste %{target} sin konto" unsuspend_account: "%{name} utviste %{target} sin konto"
update_announcement: "%{name} oppdaterte kunngjøring %{target}"
update_custom_emoji: "%{name} oppdaterte kjensleteiknet %{target}" update_custom_emoji: "%{name} oppdaterte kjensleteiknet %{target}"
update_status: "%{name} oppdaterte status for %{target}" update_status: "%{name} oppdaterte status for %{target}"
deleted_status: "(sletta status)" deleted_status: "(sletta status)"
title: Revisionslogg title: Revisionslogg
announcements:
edit:
title: Rediger kunngjøring
empty: Ingen kunngjøringer funnet.
live: Direkte
new:
create: Lag kunngjøring
title: Ny kunngjøring
published: Publisert
time_range: Tidsramme
title: Kunngjøringer
custom_emojis: custom_emojis:
assign_category: Vel kategori assign_category: Vel kategori
by_domain: Domene by_domain: Domene
@ -257,14 +276,17 @@ nn:
upload: Last opp upload: Last opp
dashboard: dashboard:
authorized_fetch_mode: Trygg modus authorized_fetch_mode: Trygg modus
backlog: opphopsloggede jobber
config: Oppsett config: Oppsett
feature_deletions: Kontoslettingar feature_deletions: Kontoslettingar
feature_invites: Innbydingar feature_invites: Innbydingar
feature_profile_directory: Profilmappe feature_profile_directory: Profilmappe
feature_registrations: Registreringar feature_registrations: Registreringar
feature_relay: Føderasjonsoverganger
feature_spam_check: Søppelvern feature_spam_check: Søppelvern
feature_timeline_preview: Førehandsvisning av tidsline feature_timeline_preview: Førehandsvisning av tidsline
features: Eigenskapar features: Eigenskapar
hidden_service: Føderering med skjulte tjenester
open_reports: opne rapportar open_reports: opne rapportar
pending_tags: emneknaggar som ventar på gjennomgang pending_tags: emneknaggar som ventar på gjennomgang
pending_users: brukarar som ventar på gjennomgang pending_users: brukarar som ventar på gjennomgang
@ -290,6 +312,7 @@ nn:
created_msg: Domeneblokkering blir nå behandlet created_msg: Domeneblokkering blir nå behandlet
destroyed_msg: Domeneblokkering har nå blitt angret destroyed_msg: Domeneblokkering har nå blitt angret
domain: Domene domain: Domene
edit: Rediger domeneblokkering
existing_domain_block_html: Du har allerede pålagt strengere begrensninger på %{name}, du kan være nødt til <a href="%{unblock_url}">oppheve blokkeringen av den</a> først. existing_domain_block_html: Du har allerede pålagt strengere begrensninger på %{name}, du kan være nødt til <a href="%{unblock_url}">oppheve blokkeringen av den</a> først.
new: new:
create: Lag blokkering create: Lag blokkering
@ -301,7 +324,9 @@ nn:
suspend: Utvis suspend: Utvis
title: Ny domeneblokkering title: Ny domeneblokkering
private_comment: Privat kommentar private_comment: Privat kommentar
private_comment_hint: Kommenter angående denne domenebegrensningen for internt bruk av moderatorene.
public_comment: Offentleg kommentar public_comment: Offentleg kommentar
public_comment_hint: Kommenter angående denne domenebegrensningen for offentligheten, hvis publisering av domenebegrensningslisten er slått på.
reject_media: Avvis mediefiler reject_media: Avvis mediefiler
reject_media_hint: Fjernar mediefiler som er lagra lokalt og nektar å lasta ned andre i framtida. Har ikkje noko å seia for utvisingar reject_media_hint: Fjernar mediefiler som er lagra lokalt og nektar å lasta ned andre i framtida. Har ikkje noko å seia for utvisingar
reject_reports: Avvis rapportar reject_reports: Avvis rapportar
@ -321,12 +346,14 @@ nn:
title: Angre domeneblokkering for %{domain} title: Angre domeneblokkering for %{domain}
undo: Angr undo: Angr
undo: Angre undo: Angre
view: Vis domeneblokkering
email_domain_blocks: email_domain_blocks:
add_new: Lag ny add_new: Lag ny
created_msg: E-postdomenet ble lagt til i blokkeringslisten uten problemer created_msg: E-postdomenet ble lagt til i blokkeringslisten uten problemer
delete: Slett delete: Slett
destroyed_msg: E-postdomenet har blitt fjernet fra blokkeringslisten uten problemer destroyed_msg: E-postdomenet har blitt fjernet fra blokkeringslisten uten problemer
domain: Domene domain: Domene
empty: Ingen e-mail-domener er sortelistet på dette tidspunkt.
new: new:
create: Legg til domene create: Legg til domene
title: Ny blokkeringsoppføring av e-postdomene title: Ny blokkeringsoppføring av e-postdomene
@ -359,15 +386,19 @@ nn:
title: Innbydingar title: Innbydingar
pending_accounts: pending_accounts:
title: Kontoar som ventar (%{count}) title: Kontoar som ventar (%{count})
relationships:
title: "%{acct} sitt forhold"
relays: relays:
add_new: Legg til ny overgang add_new: Legg til ny overgang
delete: Slett delete: Slett
description_html: En <strong>federert overgang</strong> er en mellomleddsserver som utveksler store mengder av offentlige tuter mellom servere som abonnerer og publiserer til den. <strong>Det kan hjelpe små og mellomstore servere til å oppdage innhold fra strømiverset</strong>, noe som ellers ville ha krevd at lokale brukere manuelt fulgte andre personer på fjerne servere.
disable: Slå av disable: Slå av
disabled: Slege av disabled: Slege av
enable: Slå på enable: Slå på
enable_hint: Når dette har blitt skrudd på, vil tjeneren din abonnere på alle offentlige tuter fra denne overgangen, og vil begynne å sende denne tjenerens offentlige tuter til den. enable_hint: Når dette har blitt skrudd på, vil tjeneren din abonnere på alle offentlige tuter fra denne overgangen, og vil begynne å sende denne tjenerens offentlige tuter til den.
enabled: Skrudd på enabled: Skrudd på
inbox_url: Overførings-URL inbox_url: Overførings-URL
pending: Avventer overgangens godkjenning
save_and_enable: Lagr og slå på save_and_enable: Lagr og slå på
setup: Sett opp en overgangsforbindelse setup: Sett opp en overgangsforbindelse
signatures_not_enabled: Overganger vil ikke fungere riktig mens sikkermodus eller hvitelistingsmodus er skrudd på signatures_not_enabled: Overganger vil ikke fungere riktig mens sikkermodus eller hvitelistingsmodus er skrudd på
@ -388,6 +419,7 @@ nn:
are_you_sure: Er du sikker? are_you_sure: Er du sikker?
assign_to_self: Tilegn til meg assign_to_self: Tilegn til meg
assigned: Tilsett moderator assigned: Tilsett moderator
by_target_domain: Domenet av rapportert bruker
comment: comment:
none: Ingen none: Ingen
created_at: Rapportert created_at: Rapportert
@ -398,6 +430,7 @@ nn:
create_and_resolve: Løys med merknad create_and_resolve: Løys med merknad
create_and_unresolve: Opn på nytt med merknad create_and_unresolve: Opn på nytt med merknad
delete: Slett delete: Slett
placeholder: Beskriv hvilke handlinger som har blitt tatt, eller andre relaterte oppdateringer...
reopen: Opn rapport igjen reopen: Opn rapport igjen
report: 'Rapporter #%{id}' report: 'Rapporter #%{id}'
reported_account: Rapportert konto reported_account: Rapportert konto
@ -420,6 +453,7 @@ nn:
email: Offentleg e-postadresse email: Offentleg e-postadresse
username: Brukarnamn for kontakt username: Brukarnamn for kontakt
custom_css: custom_css:
desc_html: Modifiser utseendet med CSS lastet på hver side
title: Eigen CSS title: Eigen CSS
default_noindex: default_noindex:
desc_html: Påverkar alle brukarar som ikkje har justert denne innstillinga sjølve desc_html: Påverkar alle brukarar som ikkje har justert denne innstillinga sjølve

View file

@ -21,6 +21,9 @@
federation_hint_html: Med en konto på %{instance} vil du kunne følge folk på enhver Mastodon-tjener, og mer til. federation_hint_html: Med en konto på %{instance} vil du kunne følge folk på enhver Mastodon-tjener, og mer til.
get_apps: Prøv en mobilapp get_apps: Prøv en mobilapp
hosted_on: Mastodon driftet på %{domain} hosted_on: Mastodon driftet på %{domain}
instance_actor_flash: 'Denne brukeren er en virtuell aktør brukt til å representere selve serveren og ingen individuell bruker. Det brukes til foreningsformål og bør ikke blokkeres med mindre du vil blokkere hele instansen, hvor domeneblokkering bør brukes i stedet.
'
learn_more: Lær mer learn_more: Lær mer
privacy_policy: Privatlivsretningslinjer privacy_policy: Privatlivsretningslinjer
see_whats_happening: Se hva som skjer see_whats_happening: Se hva som skjer
@ -47,6 +50,8 @@
what_is_mastodon: Hva er Mastodon? what_is_mastodon: Hva er Mastodon?
accounts: accounts:
choices_html: "%{name} sine anbefalte:" choices_html: "%{name} sine anbefalte:"
endorsements_hint: Du kan fremheve personer du følger fra nettgrensesnittet som deretter vil bli vist her.
featured_tags_hint: Du kan fremheve spesifikke emneknagger som vil bli vist her.
follow: Følg follow: Følg
followers: followers:
one: Følger one: Følger
@ -54,6 +59,7 @@
following: Følger following: Følger
joined: Ble med den %{date} joined: Ble med den %{date}
last_active: senest aktiv last_active: senest aktiv
link_verified_on: Eierskap av denne lenken ble sjekket %{date}
media: Media media: Media
moved_html: "%{name} har flyttet til %{new_profile_link}:" moved_html: "%{name} har flyttet til %{new_profile_link}:"
network_hidden: Denne informasjonen er ikke tilgjengelig network_hidden: Denne informasjonen er ikke tilgjengelig
@ -61,6 +67,8 @@
nothing_here: Det er ingenting her! nothing_here: Det er ingenting her!
people_followed_by: Folk som %{name} følger people_followed_by: Folk som %{name} følger
people_who_follow: Folk som følger %{name} people_who_follow: Folk som følger %{name}
pin_errors:
following: Du må allerede følge personen du vil fremheve
posts: posts:
one: Tut one: Tut
other: Tuter other: Tuter
@ -136,6 +144,7 @@
moderation_notes: Moderasjonsnotater moderation_notes: Moderasjonsnotater
most_recent_activity: Nyligste aktivitet most_recent_activity: Nyligste aktivitet
most_recent_ip: Nyligste IP most_recent_ip: Nyligste IP
no_account_selected: Ingen brukere ble forandret da ingen var valgt
no_limits_imposed: Ingen grenser er tatt i bruk no_limits_imposed: Ingen grenser er tatt i bruk
not_subscribed: Ikke abonnért not_subscribed: Ikke abonnért
pending: Avventer gjennomgang pending: Avventer gjennomgang
@ -173,6 +182,7 @@
statuses: Statuser statuses: Statuser
subscribe: Abonnere subscribe: Abonnere
suspended: Suspendert suspended: Suspendert
time_in_queue: Venter i kø %{time}
title: Kontoer title: Kontoer
unconfirmed_email: Ubekreftet E-postadresse unconfirmed_email: Ubekreftet E-postadresse
undo_silenced: Angre målbinding undo_silenced: Angre målbinding
@ -184,13 +194,17 @@
whitelisted: Hvitelistet whitelisted: Hvitelistet
action_logs: action_logs:
actions: actions:
assigned_to_self_report: "%{name} tilegnet rapport %{target} til seg selv"
change_email_user: "%{name} forandret e-postadressen for bruker %{target}"
confirm_user: "%{name} bekreftet e-postadresse for bruker %{target}" confirm_user: "%{name} bekreftet e-postadresse for bruker %{target}"
create_account_warning: "%{name} sendte en advarsel til %{target}" create_account_warning: "%{name} sendte en advarsel til %{target}"
create_announcement: "%{name} laget en ny kunngjøring %{target}"
create_custom_emoji: "%{name} lastet opp ny emoji %{target}" create_custom_emoji: "%{name} lastet opp ny emoji %{target}"
create_domain_allow: "%{name} hvitelistet domenet %{target}" create_domain_allow: "%{name} hvitelistet domenet %{target}"
create_domain_block: "%{name} blokkerte domenet %{target}" create_domain_block: "%{name} blokkerte domenet %{target}"
create_email_domain_block: "%{name} svartelistet e-postdomenet %{target}" create_email_domain_block: "%{name} svartelistet e-postdomenet %{target}"
demote_user: "%{name} degraderte bruker %{target}" demote_user: "%{name} degraderte bruker %{target}"
destroy_announcement: "%{name} slettet kunngjøring %{target}"
destroy_custom_emoji: "%{name} ødela emojien %{target}" destroy_custom_emoji: "%{name} ødela emojien %{target}"
destroy_domain_allow: "%{name} fjernet domenet %{target} fra hvitelisten" destroy_domain_allow: "%{name} fjernet domenet %{target} fra hvitelisten"
destroy_domain_block: "%{name} fjernet blokkeringen av domenet %{target}" destroy_domain_block: "%{name} fjernet blokkeringen av domenet %{target}"
@ -209,12 +223,25 @@
resolve_report: "%{name} avviste rapporten %{target}" resolve_report: "%{name} avviste rapporten %{target}"
silence_account: "%{name} forstummet %{target}s konto" silence_account: "%{name} forstummet %{target}s konto"
suspend_account: "%{name} suspendert %{target}s konto" suspend_account: "%{name} suspendert %{target}s konto"
unassigned_report: "%{name} avtilegnet rapport %{target}"
unsilence_account: "%{name} fjernet forstummingen av %{target}s konto" unsilence_account: "%{name} fjernet forstummingen av %{target}s konto"
unsuspend_account: "%{name} opphevde suspenderingen av %{target}s konto" unsuspend_account: "%{name} opphevde suspenderingen av %{target}s konto"
update_announcement: "%{name} oppdaterte kunngjøring %{target}"
update_custom_emoji: "%{name} oppdaterte emoji %{target}" update_custom_emoji: "%{name} oppdaterte emoji %{target}"
update_status: "%{name} oppdaterte status for %{target}" update_status: "%{name} oppdaterte status for %{target}"
deleted_status: "(statusen er slettet)" deleted_status: "(statusen er slettet)"
title: Revisionslogg title: Revisionslogg
announcements:
edit:
title: Rediger kunngjøring
empty: Ingen kunngjøringer funnet.
live: Direkte
new:
create: Lag kunngjøring
title: Ny kunngjøring
published: Publisert
time_range: Tidsramme
title: Kunngjøringer
custom_emojis: custom_emojis:
assign_category: Tilegn kategori assign_category: Tilegn kategori
by_domain: Domene by_domain: Domene
@ -249,17 +276,23 @@
upload: Last opp upload: Last opp
dashboard: dashboard:
authorized_fetch_mode: Sikkermodus authorized_fetch_mode: Sikkermodus
backlog: opphopsloggede jobber
config: Oppsett config: Oppsett
feature_deletions: Kontoslettinger feature_deletions: Kontoslettinger
feature_invites: Invitasjonslenker feature_invites: Invitasjonslenker
feature_profile_directory: Profilmappe feature_profile_directory: Profilmappe
feature_registrations: Registreringer feature_registrations: Registreringer
feature_relay: Føderasjonsoverganger
feature_spam_check: Anti-spam feature_spam_check: Anti-spam
feature_timeline_preview: Tidslinje-forhåndsvisning feature_timeline_preview: Tidslinje-forhåndsvisning
features: Egenskaper features: Egenskaper
hidden_service: Føderering med skjulte tjenester
open_reports: åpne rapporter open_reports: åpne rapporter
pending_tags: emneknagger som venter gjennomgang
pending_users: brukere som venter gjennomgang
recent_users: Nylige brukere recent_users: Nylige brukere
search: Fulltekstsøk search: Fulltekstsøk
single_user_mode: Enpersons-modus
software: Programvare software: Programvare
space: Plassbruk space: Plassbruk
title: Kontrollpanel title: Kontrollpanel
@ -271,12 +304,15 @@
whitelist_mode: Hvitelistemodus whitelist_mode: Hvitelistemodus
domain_allows: domain_allows:
add_new: Hvitelist domene add_new: Hvitelist domene
created_msg: Domenet har blitt hvitelistet
destroyed_msg: Domenet har blitt fjernet fra hvitelisten
undo: Fjern fra hvitelisten undo: Fjern fra hvitelisten
domain_blocks: domain_blocks:
add_new: Lag ny add_new: Lag ny
created_msg: Domeneblokkering blir nå behandlet created_msg: Domeneblokkering blir nå behandlet
destroyed_msg: Domeneblokkering har nå blitt angret destroyed_msg: Domeneblokkering har nå blitt angret
domain: Domene domain: Domene
edit: Rediger domeneblokkering
existing_domain_block_html: Du har allerede pålagt strengere begrensninger på %{name}, du kan være nødt til <a href="%{unblock_url}">oppheve blokkeringen av den</a> først. existing_domain_block_html: Du har allerede pålagt strengere begrensninger på %{name}, du kan være nødt til <a href="%{unblock_url}">oppheve blokkeringen av den</a> først.
new: new:
create: Lag blokkering create: Lag blokkering
@ -288,10 +324,13 @@
suspend: Utvis suspend: Utvis
title: Ny domeneblokkering title: Ny domeneblokkering
private_comment: Privat kommentar private_comment: Privat kommentar
private_comment_hint: Kommenter angående denne domenebegrensningen for internt bruk av moderatorene.
public_comment: Offentlig kommentar public_comment: Offentlig kommentar
public_comment_hint: Kommenter angående denne domenebegrensningen for offentligheten, hvis publisering av domenebegrensningslisten er slått på.
reject_media: Avvis mediefiler reject_media: Avvis mediefiler
reject_media_hint: Fjerner lokalt lagrede mediefiler og nekter å laste dem ned i fremtiden. Irrelevant for utvisninger reject_media_hint: Fjerner lokalt lagrede mediefiler og nekter å laste dem ned i fremtiden. Irrelevant for utvisninger
reject_reports: Avslå rapporter reject_reports: Avslå rapporter
reject_reports_hint: Ignorer alle rapporter som kommer fra dette domenet. Irrelevant for utvisninger
rejecting_media: avviser mediafiler rejecting_media: avviser mediafiler
rejecting_reports: avslår rapporter rejecting_reports: avslår rapporter
severity: severity:
@ -307,12 +346,14 @@
title: Angre domeneblokkering for %{domain} title: Angre domeneblokkering for %{domain}
undo: Angre undo: Angre
undo: Angre undo: Angre
view: Vis domeneblokkering
email_domain_blocks: email_domain_blocks:
add_new: Lag ny add_new: Lag ny
created_msg: E-postdomenet ble lagt til i blokkeringslisten uten problemer created_msg: E-postdomenet ble lagt til i blokkeringslisten uten problemer
delete: Fjern delete: Fjern
destroyed_msg: E-postdomenet har blitt fjernet fra blokkeringslisten uten problemer destroyed_msg: E-postdomenet har blitt fjernet fra blokkeringslisten uten problemer
domain: Domene domain: Domene
empty: Ingen e-mail-domener er sortelistet på dette tidspunkt.
new: new:
create: Legg til domene create: Legg til domene
title: Ny blokkeringsoppføring av e-postdomene title: Ny blokkeringsoppføring av e-postdomene
@ -343,20 +384,29 @@
expired: Utløpt expired: Utløpt
title: Filtrer title: Filtrer
title: Invitasjoner title: Invitasjoner
pending_accounts:
title: Avventende brukere (%{count})
relationships:
title: "%{acct} sitt forhold"
relays: relays:
add_new: Legg til ny overgang add_new: Legg til ny overgang
delete: Slett delete: Slett
description_html: En <strong>federert overgang</strong> er en mellomleddsserver som utveksler store mengder av offentlige tuter mellom servere som abonnerer og publiserer til den. <strong>Det kan hjelpe små og mellomstore servere til å oppdage innhold fra strømiverset</strong>, noe som ellers ville ha krevd at lokale brukere manuelt fulgte andre personer på fjerne servere.
disable: Skru av disable: Skru av
disabled: Skrudd av disabled: Skrudd av
enable: Skru på enable: Skru på
enable_hint: Når dette har blitt skrudd på, vil tjeneren din abonnere på alle offentlige tuter fra denne overgangen, og vil begynne å sende denne tjenerens offentlige tuter til den. enable_hint: Når dette har blitt skrudd på, vil tjeneren din abonnere på alle offentlige tuter fra denne overgangen, og vil begynne å sende denne tjenerens offentlige tuter til den.
enabled: Skrudd på enabled: Skrudd på
inbox_url: Overførings-URL inbox_url: Overførings-URL
pending: Avventer overgangens godkjenning
save_and_enable: Lagre og skru på save_and_enable: Lagre og skru på
setup: Sett opp en overgangsforbindelse setup: Sett opp en overgangsforbindelse
signatures_not_enabled: Overganger vil ikke fungere riktig mens sikkermodus eller hvitelistingsmodus er skrudd på signatures_not_enabled: Overganger vil ikke fungere riktig mens sikkermodus eller hvitelistingsmodus er skrudd på
status: Status status: Status
title: Overganger title: Overganger
report_notes:
created_msg: Rapportnotat opprettet!
destroyed_msg: Rapportnotat slettet!
reports: reports:
account: account:
notes: notes:
@ -369,6 +419,7 @@
are_you_sure: Er du sikker? are_you_sure: Er du sikker?
assign_to_self: Tilegn til meg assign_to_self: Tilegn til meg
assigned: Tilegnet moderator assigned: Tilegnet moderator
by_target_domain: Domenet av rapportert bruker
comment: comment:
none: Ingen none: Ingen
created_at: Rapportert created_at: Rapportert
@ -376,12 +427,16 @@
mark_as_unresolved: Merk som uoppklart mark_as_unresolved: Merk som uoppklart
notes: notes:
create: Legg til notat create: Legg til notat
create_and_resolve: Løst med notat
create_and_unresolve: Gjenåpne med notat
delete: Slett delete: Slett
placeholder: Beskriv hvilke handlinger som har blitt tatt, eller andre relaterte oppdateringer...
reopen: Gjenåpne rapporten reopen: Gjenåpne rapporten
report: 'Rapporter #%{id}' report: 'Rapporter #%{id}'
reported_account: Rapportert konto reported_account: Rapportert konto
reported_by: Rapportert av reported_by: Rapportert av
resolved: Løst resolved: Løst
resolved_msg: Rapport løst!
status: Status status: Status
title: Rapporter title: Rapporter
unassign: Fjern tilegning unassign: Fjern tilegning
@ -398,6 +453,7 @@
email: Skriv en offentlig e-postadresse email: Skriv en offentlig e-postadresse
username: Skriv brukernavn username: Skriv brukernavn
custom_css: custom_css:
desc_html: Modifiser utseendet med CSS lastet på hver side
title: Egendefinert CSS title: Egendefinert CSS
domain_blocks: domain_blocks:
all: Til alle all: Til alle

View file

@ -206,11 +206,13 @@ ru:
change_email_user: "%{name} сменил(а) e-mail пользователя %{target}" change_email_user: "%{name} сменил(а) e-mail пользователя %{target}"
confirm_user: "%{name} подтвердил(а) e-mail адрес пользователя %{target}" confirm_user: "%{name} подтвердил(а) e-mail адрес пользователя %{target}"
create_account_warning: "%{name} выдал(а) предупреждение %{target}" create_account_warning: "%{name} выдал(а) предупреждение %{target}"
create_announcement: "%{name} содал новое объявление %{target}"
create_custom_emoji: "%{name} загрузил(а) новый эмодзи %{target}" create_custom_emoji: "%{name} загрузил(а) новый эмодзи %{target}"
create_domain_allow: "%{name} внес(ла) домен %{target} в белый список" create_domain_allow: "%{name} внес(ла) домен %{target} в белый список"
create_domain_block: "%{name} заблокировал(а) домен %{target}" create_domain_block: "%{name} заблокировал(а) домен %{target}"
create_email_domain_block: "%{name} добавил(а) e-mail домен %{target} в чёрный список" create_email_domain_block: "%{name} добавил(а) e-mail домен %{target} в чёрный список"
demote_user: "%{name} разжаловал(а) пользователя %{target}" demote_user: "%{name} разжаловал(а) пользователя %{target}"
destroy_announcement: "%{name} удалил объявление %{target}"
destroy_custom_emoji: "%{name} измельчил(а) эмодзи %{target} в пыль" destroy_custom_emoji: "%{name} измельчил(а) эмодзи %{target} в пыль"
destroy_domain_allow: "%{name} убрал домен %{target} из белого списка" destroy_domain_allow: "%{name} убрал домен %{target} из белого списка"
destroy_domain_block: "%{name} разблокировал(а) домен %{target}" destroy_domain_block: "%{name} разблокировал(а) домен %{target}"
@ -232,10 +234,22 @@ ru:
unassigned_report: "%{name} сняла назначение жалобы %{target}" unassigned_report: "%{name} сняла назначение жалобы %{target}"
unsilence_account: "%{name} снял ограничения видимости постов пользователя %{target}" unsilence_account: "%{name} снял ограничения видимости постов пользователя %{target}"
unsuspend_account: "%{name} снял(а) блокировку с пользователя %{target}" unsuspend_account: "%{name} снял(а) блокировку с пользователя %{target}"
update_announcement: "%{name} обновил объявление %{target}"
update_custom_emoji: "%{name} обновил(а) эмодзи %{target}" update_custom_emoji: "%{name} обновил(а) эмодзи %{target}"
update_status: "%{name} изменил(а) пост пользователя %{target}" update_status: "%{name} изменил(а) пост пользователя %{target}"
deleted_status: "(удалённый пост)" deleted_status: "(удалённый пост)"
title: Журнал событий title: Журнал событий
announcements:
edit:
title: Редактировать объявление
empty: Объявления не найдены.
live: В эфире
new:
create: Создать объявление
title: Новое объявление
published: Опубликованные
time_range: Временной диапазон
title: Объявления
custom_emojis: custom_emojis:
assign_category: Задать категорию assign_category: Задать категорию
by_domain: Домен by_domain: Домен
@ -678,6 +692,9 @@ ru:
hint_html: "<strong>Подсказка</strong>: мы не будем спрашивать пароль повторно в течение часа." hint_html: "<strong>Подсказка</strong>: мы не будем спрашивать пароль повторно в течение часа."
invalid_password: Неверный пароль invalid_password: Неверный пароль
prompt: Введите пароль для продолжения prompt: Введите пароль для продолжения
date:
formats:
default: "%d %b %Y"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}ч" about_x_hours: "%{count}ч"
@ -779,6 +796,8 @@ ru:
all: Любой all: Любой
changes_saved_msg: Изменения успешно сохранены! changes_saved_msg: Изменения успешно сохранены!
copy: Копировать copy: Копировать
delete: Удалить
edit: Изменить
no_batch_actions_available: На этой странице нет запланированных действий no_batch_actions_available: На этой странице нет запланированных действий
order_by: Сортировка order_by: Сортировка
save_changes: Сохранить изменения save_changes: Сохранить изменения
@ -958,6 +977,10 @@ ru:
other: Всё остальное other: Всё остальное
posting_defaults: Настройки отправки по умолчанию posting_defaults: Настройки отправки по умолчанию
public_timelines: Публичные ленты public_timelines: Публичные ленты
reactions:
errors:
limit_reached: Достигнут лимит разных реакций
unrecognized_emoji: не является распознанным эмодзи
relationships: relationships:
activity: Активность учётной записи activity: Активность учётной записи
dormant: Заброшенная dormant: Заброшенная

View file

@ -14,6 +14,12 @@ ca:
text_html: Opcional. Pots utilitzar tota la sintaxi. Pots <a href="%{path}">afegir configuracions predefinides d'avís</a> per a estalviar temps text_html: Opcional. Pots utilitzar tota la sintaxi. Pots <a href="%{path}">afegir configuracions predefinides d'avís</a> per a estalviar temps
type_html: Tria què fer amb <strong>%{acct}</strong> type_html: Tria què fer amb <strong>%{acct}</strong>
warning_preset_id: Opcional. Encara pots afegir text personalitzat al final de la configuració predefinida warning_preset_id: Opcional. Encara pots afegir text personalitzat al final de la configuració predefinida
announcement:
all_day: Si es marca, només es mostraran les dates de l'interval de temps
ends_at: Opcional. En aquest moment, lanunci deixarà automàticament d'estar publicat
scheduled_at: Deixa-ho en blanc per a publicar lanunci immediatament
starts_at: Opcional. En el cas que el teu anunci estigui vinculat a un interval de temps específic
text: Pots utilitzar sintaxi d'un tut. Tingues en compte lespai que lanunci ocuparà a la pantalla de lusuari
defaults: defaults:
autofollow: Les persones que es registrin a través de la invitació et seguiran automàticament autofollow: Les persones que es registrin a través de la invitació et seguiran automàticament
avatar: PNG, GIF o JPG. Màxim %{size}. S'escalarà a %{dimensions}px avatar: PNG, GIF o JPG. Màxim %{size}. S'escalarà a %{dimensions}px
@ -83,6 +89,12 @@ ca:
silence: Silenci silence: Silenci
suspend: Suspèn i elimina irreversiblement les dades del compte suspend: Suspèn i elimina irreversiblement les dades del compte
warning_preset_id: Utilitza una configuració predefinida d'avís warning_preset_id: Utilitza una configuració predefinida d'avís
announcement:
all_day: Esdeveniment de tot el dia
ends_at: Fi del esdeveniment
scheduled_at: Programa la publicació
starts_at: Inici del esdeveniment
text: Anunci
defaults: defaults:
autofollow: Convida a seguir el teu compte autofollow: Convida a seguir el teu compte
avatar: Avatar avatar: Avatar

View file

@ -14,6 +14,12 @@ co:
text_html: In uzzione. Pudete utilizà a sintassa di i statuti. Pudete ancu <a href="%{path}">aghjustà preselezzione d'avertimentu</a> per piglià tempu text_html: In uzzione. Pudete utilizà a sintassa di i statuti. Pudete ancu <a href="%{path}">aghjustà preselezzione d'avertimentu</a> per piglià tempu
type_html: Sceglie chì fà cù <strong>%{acct}</strong> type_html: Sceglie chì fà cù <strong>%{acct}</strong>
warning_preset_id: In uzzione. Pudete sempre aghjustà un testu persunalizatu à a fine di a preselezzione warning_preset_id: In uzzione. Pudete sempre aghjustà un testu persunalizatu à a fine di a preselezzione
announcement:
all_day: Sole e date da st'intervallu di tempu saranu mustrate
ends_at: In uzzione. L'annunziu sarà autumaticamente piattatu dop'à sta data
scheduled_at: Lasciate viotu per pubblicà l'annunziu avà
starts_at: In uzzione. S'e l'annunziu hè ligatu à un'intervallu di tempu specificu
text: Pudete utilizà a sintassa di i statuti. Pensate à a piazza chì l'annunziu hà da piglià nant'à u screnu di l'utilizatore
defaults: defaults:
autofollow: Quelli·e chì s'arregistranu cù l'invitazione saranu autumaticamente abbunati·e à voi autofollow: Quelli·e chì s'arregistranu cù l'invitazione saranu autumaticamente abbunati·e à voi
avatar: Furmatu PNG, GIF o JPG. %{size} o menu. Sarà ridottu à %{dimensions}px avatar: Furmatu PNG, GIF o JPG. %{size} o menu. Sarà ridottu à %{dimensions}px
@ -83,6 +89,12 @@ co:
silence: Silenzà silence: Silenzà
suspend: Suspende è sguassà i dati di u contu di manera irreversibile suspend: Suspende è sguassà i dati di u contu di manera irreversibile
warning_preset_id: Utilizà un'avertimentu preselezziunatu warning_preset_id: Utilizà un'avertimentu preselezziunatu
announcement:
all_day: Tutta a ghjurnata
ends_at: Fine di l'avvenimentu
scheduled_at: Pianificà publicazione
starts_at: Principiu di l'avvenimentu
text: Annunziu
defaults: defaults:
autofollow: Invità à siguità u vostru contu autofollow: Invità à siguità u vostru contu
avatar: Ritrattu di prufile avatar: Ritrattu di prufile

View file

@ -83,6 +83,10 @@ cs:
silence: Ztišit silence: Ztišit
suspend: Pozastavit účet a nenávratně smazat jeho data suspend: Pozastavit účet a nenávratně smazat jeho data
warning_preset_id: Použít předlohu pro varování warning_preset_id: Použít předlohu pro varování
announcement:
all_day: Celodenní událost
scheduled_at: Naplánovat zveřejnění
starts_at: Začátek události
defaults: defaults:
autofollow: Pozvat ke sledování vašeho účtu autofollow: Pozvat ke sledování vašeho účtu
avatar: Avatar avatar: Avatar

View file

@ -14,6 +14,12 @@ el:
text_html: Προαιρετικό. Μπορείς να χρησιμοποιήσεις συντακτικό ενός τουτ. Μπορείς να <a href="%{path}">ορίσεις προκαθορισμένες προειδοποιήσεις</a> για να γλυτώσεις χρόνο text_html: Προαιρετικό. Μπορείς να χρησιμοποιήσεις συντακτικό ενός τουτ. Μπορείς να <a href="%{path}">ορίσεις προκαθορισμένες προειδοποιήσεις</a> για να γλυτώσεις χρόνο
type_html: Διάλεξε τι θα κανείς με τον <strong>%{acct}</strong> type_html: Διάλεξε τι θα κανείς με τον <strong>%{acct}</strong>
warning_preset_id: Προαιρετικό. Μπορείς να προσθέσεις επιπλέον κείμενο μετά το προκαθορισμένο κείμενο warning_preset_id: Προαιρετικό. Μπορείς να προσθέσεις επιπλέον κείμενο μετά το προκαθορισμένο κείμενο
announcement:
all_day: Όταν είναι επιλεγμένο, θα εμφανίζονται μόνο οι ημερομηνίες εντός της χρονικής διάρκειας
ends_at: Προαιρετικό. Η ανακοίνωση θα αποσυρθεί αυτόματα τη δηλωμένη ώρα
scheduled_at: Αν μείνει κενό, η ενημέρωση θα δημοσιευτεί αμέσως
starts_at: Προαιρετικό, για την περίπτωση που η ανακοίνωση αφορά συγκεκριμένη χρονική διάρκεια
text: Δεκτό το συντακτικό των τουτ. Παρακαλούμε έχε υπόψιν σου το χώρο που θα καταλάβει η ανακοίνωση στην οθόνη του χρήστη
defaults: defaults:
autofollow: Όσοι εγγραφούν μέσω της πρόσκλησης θα σε ακολουθούν αυτόματα autofollow: Όσοι εγγραφούν μέσω της πρόσκλησης θα σε ακολουθούν αυτόματα
avatar: PNG, GIF ή JPG. Έως %{size}. Θα περιοριστεί σε διάσταση %{dimensions}px avatar: PNG, GIF ή JPG. Έως %{size}. Θα περιοριστεί σε διάσταση %{dimensions}px
@ -83,6 +89,12 @@ el:
silence: Αποσιώπηση silence: Αποσιώπηση
suspend: Αναστολή και αμετάκλητη διαγραφή στοιχείων λογαριασμού suspend: Αναστολή και αμετάκλητη διαγραφή στοιχείων λογαριασμού
warning_preset_id: Χρήση προκαθορισμένης προειδοποίησης warning_preset_id: Χρήση προκαθορισμένης προειδοποίησης
announcement:
all_day: Ολοήμερο γεγονός
ends_at: Λήξη γεγονότος
scheduled_at: Προγραμματισμένη δημοσίευση
starts_at: Έναρξη γεγονότος
text: Ανακοίνωση
defaults: defaults:
autofollow: Προσκάλεσε για να ακολουθήσουν το λογαριασμό σου autofollow: Προσκάλεσε για να ακολουθήσουν το λογαριασμό σου
avatar: Αβατάρ avatar: Αβατάρ

View file

@ -14,6 +14,12 @@ es-AR:
text_html: Opcional. Podés usar sintaxis de toots. Podés <a href="%{path}">agregar preajustes de advertencia</a> para ahorrar tiempo. text_html: Opcional. Podés usar sintaxis de toots. Podés <a href="%{path}">agregar preajustes de advertencia</a> para ahorrar tiempo.
type_html: Elegí qué hacer con <strong>%{acct}</strong> type_html: Elegí qué hacer con <strong>%{acct}</strong>
warning_preset_id: Opcional. Todavía podés agregar texto personalizado al final del preajuste warning_preset_id: Opcional. Todavía podés agregar texto personalizado al final del preajuste
announcement:
all_day: Cuando esté seleccionado, sólo se mostrarán las fechas del rango de tiempo
ends_at: Opcional. El anuncio desaparecerá automáticamente en este momento
scheduled_at: Dejar en blanco para publicar el anuncio inmediatamente
starts_at: Opcional. En caso de que tu anuncio esté vinculado a un rango de tiempo específico
text: Podés usar la sintaxis de toot. Por favor, tené en cuenta el espacio que ocupará el anuncio en la pantalla del usuario
defaults: defaults:
autofollow: Los usuarios que se registren mediante la invitación te seguirán automáticamente autofollow: Los usuarios que se registren mediante la invitación te seguirán automáticamente
avatar: 'PNG, GIF o JPG. Máximo: %{size}. Será subescalado a %{dimensions} píxeles.' avatar: 'PNG, GIF o JPG. Máximo: %{size}. Será subescalado a %{dimensions} píxeles.'
@ -83,6 +89,12 @@ es-AR:
silence: Silenciar silence: Silenciar
suspend: Suspender y eliminar de forma irreversible los datos de la cuenta suspend: Suspender y eliminar de forma irreversible los datos de la cuenta
warning_preset_id: Usar un texto predeterminado warning_preset_id: Usar un texto predeterminado
announcement:
all_day: Evento de todo el día
ends_at: Fin del evento
scheduled_at: Programar publicación
starts_at: Comienzo del evento
text: Anuncio
defaults: defaults:
autofollow: Invitar para seguir tu cuenta autofollow: Invitar para seguir tu cuenta
avatar: Avatar avatar: Avatar

View file

@ -14,6 +14,12 @@ es:
text_html: Opcional. Puede usar sintaxis de toots. Puede añadir <a href="%{path}">configuraciones predefinidas de advertencia</a> para ahorrar tiempo text_html: Opcional. Puede usar sintaxis de toots. Puede añadir <a href="%{path}">configuraciones predefinidas de advertencia</a> para ahorrar tiempo
type_html: Elige qué hacer con <strong>%{acct}</strong> type_html: Elige qué hacer con <strong>%{acct}</strong>
warning_preset_id: Opcional. Aún puede añadir texto personalizado al final de la configuración predefinida warning_preset_id: Opcional. Aún puede añadir texto personalizado al final de la configuración predefinida
announcement:
all_day: Cuando está seleccionado solo se mostrarán las fechas del rango de tiempo
ends_at: Opcional. El anuncio desaparecerá automáticamente en este momento
scheduled_at: Dejar en blanco para publicar el anuncio inmediatamente
starts_at: Opcional. En caso de que su anuncio esté vinculado a un intervalo de tiempo específico
text: Puedes usar la sintaxis toot. Por favor ten en cuenta el espacio que ocupará el anuncio en la pantalla del usuario
defaults: defaults:
autofollow: Los usuarios que se registren mediante la invitación te seguirán automáticamente autofollow: Los usuarios que se registren mediante la invitación te seguirán automáticamente
avatar: PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px avatar: PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px
@ -42,7 +48,7 @@ es:
setting_noindex: Afecta a tu perfil público y páginas de estado setting_noindex: Afecta a tu perfil público y páginas de estado
setting_show_application: La aplicación que utiliza usted para publicar toots se mostrará en la vista detallada de sus toots setting_show_application: La aplicación que utiliza usted para publicar toots se mostrará en la vista detallada de sus toots
setting_use_blurhash: Los gradientes se basan en los colores de las imágenes ocultas pero haciendo borrosos los detalles setting_use_blurhash: Los gradientes se basan en los colores de las imágenes ocultas pero haciendo borrosos los detalles
setting_use_pending_items: Ocultar actualizaciones cronológicas tras un clic en lugar de desplazar automáticamente la ristra setting_use_pending_items: Ocultar nuevos estados detrás de un clic en lugar de desplazar automáticamente el feed
username: Tu nombre de usuario será único en %{domain} username: Tu nombre de usuario será único en %{domain}
whole_word: Cuando la palabra clave o frase es solo alfanumérica, solo será aplicado si concuerda con toda la palabra whole_word: Cuando la palabra clave o frase es solo alfanumérica, solo será aplicado si concuerda con toda la palabra
domain_allow: domain_allow:
@ -52,7 +58,7 @@ es:
form_challenge: form_challenge:
current_password: Estás entrando en un área segura current_password: Estás entrando en un área segura
imports: imports:
data: Archivo CSV exportado desde otra instancia de Mastodonte data: Archivo CSV exportado desde otra instancia de Mastodon
invite_request: invite_request:
text: Esto nos ayudará a revisar su aplicación text: Esto nos ayudará a revisar su aplicación
sessions: sessions:
@ -83,6 +89,12 @@ es:
silence: Silenciar silence: Silenciar
suspend: Suspender y eliminar de forma irreversible la información de la cuenta suspend: Suspender y eliminar de forma irreversible la información de la cuenta
warning_preset_id: Usar un aviso predeterminado warning_preset_id: Usar un aviso predeterminado
announcement:
all_day: Evento de todo el día
ends_at: Fin del evento
scheduled_at: Programar publicación
starts_at: Comienzo del evento
text: Anuncio
defaults: defaults:
autofollow: Invitar a seguir tu cuenta autofollow: Invitar a seguir tu cuenta
avatar: Avatar avatar: Avatar
@ -110,7 +122,7 @@ es:
password: Contraseña password: Contraseña
phrase: Palabra clave o frase phrase: Palabra clave o frase
setting_advanced_layout: Habilitar interfaz web avanzada setting_advanced_layout: Habilitar interfaz web avanzada
setting_aggregate_reblogs: Agrupar rebarritadas en las cronologías setting_aggregate_reblogs: Agrupar retoots en las líneas de tiempo
setting_auto_play_gif: Reproducir automáticamente los GIFs animados setting_auto_play_gif: Reproducir automáticamente los GIFs animados
setting_boost_modal: Mostrar ventana de confirmación antes de un Retoot setting_boost_modal: Mostrar ventana de confirmación antes de un Retoot
setting_crop_images: Recortar a 16x9 las imágenes de los toots no expandidos setting_crop_images: Recortar a 16x9 las imágenes de los toots no expandidos
@ -157,7 +169,7 @@ es:
pending_account: Enviar correo electrónico cuando una nueva cuenta necesita revisión pending_account: Enviar correo electrónico cuando una nueva cuenta necesita revisión
reblog: Enviar correo electrónico cuando alguien comparta su publicación reblog: Enviar correo electrónico cuando alguien comparta su publicación
report: Enviar un correo cuando se envía un nuevo informe report: Enviar un correo cuando se envía un nuevo informe
trending_tag: Enviar correo electrónico cuando una etiqueta no revisada es tendencia trending_tag: Enviar correo electrónico cuando una etiqueta no revisada está de tendencia
tag: tag:
listable: Permitir que esta etiqueta aparezca en las búsquedas y en el directorio del perfil listable: Permitir que esta etiqueta aparezca en las búsquedas y en el directorio del perfil
name: Etiqueta name: Etiqueta

View file

@ -14,6 +14,12 @@ eu:
text_html: Aukerakoa. Toot sintaxia erabili dezakezu. <a href="%{path}">Abisu aurre-ezarpenak</a> gehitu ditzakezu denbora aurrezteko text_html: Aukerakoa. Toot sintaxia erabili dezakezu. <a href="%{path}">Abisu aurre-ezarpenak</a> gehitu ditzakezu denbora aurrezteko
type_html: Erabaki zer egin <strong>%{acct}</strong> kontuarekin type_html: Erabaki zer egin <strong>%{acct}</strong> kontuarekin
warning_preset_id: Aukerakoa. Zure testua gehitu dezakezu aurre-ezarpenaren ostean warning_preset_id: Aukerakoa. Zure testua gehitu dezakezu aurre-ezarpenaren ostean
announcement:
all_day: Markatutakoan soilik denbora barrutiko datak erakutsiko dira
ends_at: Aukerakoa. Iragapena une honetan automatikoki desargitaratuko da
scheduled_at: Laga hutsik iragarpena berehala argitaratzeko
starts_at: Aukerakoa. Zure iragarpena denbora-tarte batera lotuta dagoenerako
text: Toot-etako sintaxia erabili dezakezu. Kontuan izan iragarpenak erabiltzailearen pantailan hartuko duen neurria
defaults: defaults:
autofollow: Gonbidapena erabiliz izena ematen dutenek automatikoki jarraituko dizute autofollow: Gonbidapena erabiliz izena ematen dutenek automatikoki jarraituko dizute
avatar: PNG, GIF edo JPG. Gehienez %{size}. %{dimensions}px neurrira eskalatuko da avatar: PNG, GIF edo JPG. Gehienez %{size}. %{dimensions}px neurrira eskalatuko da
@ -83,6 +89,12 @@ eu:
silence: Isiltarazi silence: Isiltarazi
suspend: Kanporatu eta behin betiko ezabatu kontuko datuak suspend: Kanporatu eta behin betiko ezabatu kontuko datuak
warning_preset_id: Erabili aurre-ezarritako abisu bat warning_preset_id: Erabili aurre-ezarritako abisu bat
announcement:
all_day: Egun osoko gertaera
ends_at: Gertaeraren amaiera
scheduled_at: Programatu argitaratzea
starts_at: Gertaeraren hasiera
text: Iragarpena
defaults: defaults:
autofollow: Gonbidatu zure kontua jarraitzera autofollow: Gonbidatu zure kontua jarraitzera
avatar: Abatarra avatar: Abatarra

View file

@ -13,7 +13,7 @@ gl:
send_email_notification: A usuaria recibirá unha explicación sobre o que lle aconteceu a súa conta send_email_notification: A usuaria recibirá unha explicación sobre o que lle aconteceu a súa conta
text_html: Optativo. Pode utilizar formato no toot. Pode <a href="%{path}">engadir avisos preestablecidos</a> para aforrar tempo text_html: Optativo. Pode utilizar formato no toot. Pode <a href="%{path}">engadir avisos preestablecidos</a> para aforrar tempo
type_html: Escolla que facer con <strong>%{acct}</strong> type_html: Escolla que facer con <strong>%{acct}</strong>
warning_preset_id: Optativo. Poderá engadir texto persoalizado ao final do preestablecido warning_preset_id: Optativo. Poderás engadir texto personalizado ao final do preestablecido
announcement: announcement:
all_day: Cando se marca, só serán amosadas as datas do intre de tempo all_day: Cando se marca, só serán amosadas as datas do intre de tempo
ends_at: Opcional. O anuncio non se publicará de xeito automático neste intre ends_at: Opcional. O anuncio non se publicará de xeito automático neste intre
@ -21,7 +21,7 @@ gl:
starts_at: Opcional. No caso de que o teu anuncio estea vinculado a un intre de tempo específico starts_at: Opcional. No caso de que o teu anuncio estea vinculado a un intre de tempo específico
text: Podes empregar a sintaxe do toot. Ten en conta o espazo que ocupará o anuncio na pantalla do usuario text: Podes empregar a sintaxe do toot. Ten en conta o espazo que ocupará o anuncio na pantalla do usuario
defaults: defaults:
autofollow: As persoas que se conectaron a través de un convite seguirana automáticamente a vostede autofollow: As persoas que se conectaron a través dun convite seguirante automáticamente
avatar: PNG, GIF ou JPG. Máximo %{size}. Será reducida a %{dimensions}px avatar: PNG, GIF ou JPG. Máximo %{size}. Será reducida a %{dimensions}px
bot: Esta conta realiza principalmente accións automatizadas e podería non estar monitorizada bot: Esta conta realiza principalmente accións automatizadas e podería non estar monitorizada
context: Un ou varios contextos onde se debería aplicar o filtro context: Un ou varios contextos onde se debería aplicar o filtro
@ -90,7 +90,7 @@ gl:
suspend: Suspender e eliminar irreversiblemente datos da conta suspend: Suspender e eliminar irreversiblemente datos da conta
warning_preset_id: Utilizar un aviso preestablecido warning_preset_id: Utilizar un aviso preestablecido
announcement: announcement:
all_day: Acontecemento diario all_day: Evento para todo o día
ends_at: Final do acontecemento ends_at: Final do acontecemento
scheduled_at: Publicación programada scheduled_at: Publicación programada
starts_at: Comezo do acontecemento starts_at: Comezo do acontecemento

View file

@ -14,6 +14,12 @@ hu:
text_html: Opcionális. A tülk szintaxis használható. Egyszerűsítés végett létre is hozhatsz <a href="%{path}">figyelmeztetéseket</a> text_html: Opcionális. A tülk szintaxis használható. Egyszerűsítés végett létre is hozhatsz <a href="%{path}">figyelmeztetéseket</a>
type_html: Megmondhatod, mi legyen vele <strong>%{acct}</strong> type_html: Megmondhatod, mi legyen vele <strong>%{acct}</strong>
warning_preset_id: Opcionális. A figyelmeztetés végére saját szöveget is írhatsz warning_preset_id: Opcionális. A figyelmeztetés végére saját szöveget is írhatsz
announcement:
all_day: Bejelölve csak a dátumok számítanak majd a megadott intervallumból
ends_at: Opcionális. A közleményt ekkor automatikusan levesszük
scheduled_at: Hagyd üresen, hogy a közleményt azonnal közzétegyük
starts_at: Opcionális. Akkor használd, ha a közleményed adott időintervallumra vonatkozik
text: Használhatod a tülkök szintaxisát. Ügyelj arra, mennyi helyet foglal el majd a közlemény a felhasználó képernyőjén
defaults: defaults:
autofollow: Akik meghívón keresztül regisztrálnak, automatikusan követni fognak téged autofollow: Akik meghívón keresztül regisztrálnak, automatikusan követni fognak téged
avatar: PNG, GIF vagy JPG. Maximum %{size}. Átméretezzük %{dimensions} pixelre avatar: PNG, GIF vagy JPG. Maximum %{size}. Átméretezzük %{dimensions} pixelre
@ -83,6 +89,12 @@ hu:
silence: Elnémítás silence: Elnémítás
suspend: Fiók felfüggesztése, adatok törlése visszaállíthatatlanul suspend: Fiók felfüggesztése, adatok törlése visszaállíthatatlanul
warning_preset_id: Figyelmeztetés használata warning_preset_id: Figyelmeztetés használata
announcement:
all_day: Egész napos esemény
ends_at: Esemény vége
scheduled_at: Közlemény időzítése
starts_at: Esemény kezdete
text: Közlemény
defaults: defaults:
autofollow: Meghívás a fiókod követésére autofollow: Meghívás a fiókod követésére
avatar: Profilkép avatar: Profilkép

View file

@ -14,6 +14,12 @@ id:
text_html: Opsional. Anda dapat memakai sintaks toot. Anda dapat <a href="%{path}">menambahkan preset peringatan</a> untuk hemat waktu text_html: Opsional. Anda dapat memakai sintaks toot. Anda dapat <a href="%{path}">menambahkan preset peringatan</a> untuk hemat waktu
type_html: Pilih apa yang perlu dilakukan dengan <strong>%{acct}</strong> type_html: Pilih apa yang perlu dilakukan dengan <strong>%{acct}</strong>
warning_preset_id: Opsional. Anda tetap dapat menambahkan teks kustom pada akhir preset warning_preset_id: Opsional. Anda tetap dapat menambahkan teks kustom pada akhir preset
announcement:
all_day: Saat dicentang, hanya tanggal dalam rentang waktu tertentu yang akan ditampilkan
ends_at: Opsional. Pengumuman akan diterbitkan secara otomatis saat ini
scheduled_at: Biarkan kosong jika ingin menerbitkan pengumuman secara langsung
starts_at: Opsional. Persiapan jika pengumuman Anda terikat pada rentang waktu tertentu
text: Anda dapat menggunakan sintaks toot. Mohon perhatikan ruang pengumuman yang mungkin akan memenuhi layar pengguna
defaults: defaults:
autofollow: Orang yang ingin mendaftar lewat undangan, otomatis mengikuti Anda autofollow: Orang yang ingin mendaftar lewat undangan, otomatis mengikuti Anda
avatar: PNG, GIF atau JPG. Maksimal %{size}. Ukuran dikecilkan menjadi %{dimensions}px avatar: PNG, GIF atau JPG. Maksimal %{size}. Ukuran dikecilkan menjadi %{dimensions}px

View file

@ -14,6 +14,12 @@ ja:
text_html: オプションです。投稿に用いる構文を使うことができます。簡略化のため<a href="%{path}">プリセット警告文を追加</a>することができます text_html: オプションです。投稿に用いる構文を使うことができます。簡略化のため<a href="%{path}">プリセット警告文を追加</a>することができます
type_html: "<strong>%{acct}</strong>さんに対し、何を行うか選択してください" type_html: "<strong>%{acct}</strong>さんに対し、何を行うか選択してください"
warning_preset_id: オプションです。プリセット警告文の末尾に任意の文字列を追加することができます warning_preset_id: オプションです。プリセット警告文の末尾に任意の文字列を追加することができます
announcement:
all_day: 選択すると、おしらせ対象の開始および終了日時は日付のみ表示されます
ends_at: オプションです。指定すると、お知らせの掲載はその日時で自動的に終了します
scheduled_at: お知らせを今すぐ掲載する場合は空欄にしてください
starts_at: オプションです。お知らせしたい事柄の期間が決まっている場合に使用します
text: トゥートと同じ構文を使用できます。アナウンスが占める画面のスペースに注意してください
defaults: defaults:
autofollow: 招待から登録した人が自動的にあなたをフォローするようになります autofollow: 招待から登録した人が自動的にあなたをフォローするようになります
avatar: "%{size}までのPNG、GIF、JPGが利用可能です。%{dimensions}pxまで縮小されます" avatar: "%{size}までのPNG、GIF、JPGが利用可能です。%{dimensions}pxまで縮小されます"
@ -84,7 +90,11 @@ ja:
suspend: 停止しアカウントのデータを恒久的に削除する suspend: 停止しアカウントのデータを恒久的に削除する
warning_preset_id: プリセット警告文を使用 warning_preset_id: プリセット警告文を使用
announcement: announcement:
text: 告知 all_day: 終日
ends_at: お知らせ対象の終了日時
scheduled_at: 掲載する日時
starts_at: おしらせ対象の開始日時
text: お知らせ
defaults: defaults:
autofollow: 招待から参加後、あなたをフォロー autofollow: 招待から参加後、あなたをフォロー
avatar: アイコン avatar: アイコン

View file

@ -14,6 +14,12 @@ ko:
text_html: 선택사항. 툿 문법을 사용할 수 있습니다. <a href="%{path}">경고 틀을 추가</a>하여 시간을 절약할 수 있습니다 text_html: 선택사항. 툿 문법을 사용할 수 있습니다. <a href="%{path}">경고 틀을 추가</a>하여 시간을 절약할 수 있습니다
type_html: "<strong>%{acct}</strong>에 대해 취할 행동 선택" type_html: "<strong>%{acct}</strong>에 대해 취할 행동 선택"
warning_preset_id: 선택사항. 틀의 마지막에 임의의 텍스트를 추가 할 수 있습니다 warning_preset_id: 선택사항. 틀의 마지막에 임의의 텍스트를 추가 할 수 있습니다
announcement:
all_day: 체크 되었을 경우, 그 시간에 속한 날짜들에만 표시됩니다
ends_at: 옵션입니다. 공지사항이 이 시간에 자동으로 발행 중지 됩니다
scheduled_at: 공백으로 두면 공지사항이 곧바로 발행 됩니다
starts_at: 공지사항이 특정한 시간에 종속 될 때를 위한 옵션입니다
text: 툿 문법을 사용할 수 있습니다. 공지사항은 사용자의 화면 상단 공간을 차지한다는 것을 명심하세요
defaults: defaults:
autofollow: 이 초대를 통해 가입하는 사람은 당신을 자동으로 팔로우 하게 됩니다 autofollow: 이 초대를 통해 가입하는 사람은 당신을 자동으로 팔로우 하게 됩니다
avatar: PNG, GIF 혹은 JPG. 최대 %{size}. %{dimensions}px로 축소 됨 avatar: PNG, GIF 혹은 JPG. 최대 %{size}. %{dimensions}px로 축소 됨
@ -83,6 +89,12 @@ ko:
silence: 침묵 silence: 침묵
suspend: 정지하고 되돌릴 수 없는 데이터 삭제 suspend: 정지하고 되돌릴 수 없는 데이터 삭제
warning_preset_id: 경고 틀 사용하기 warning_preset_id: 경고 틀 사용하기
announcement:
all_day: 종일 일정
ends_at: 이벤트 종료
scheduled_at: 발행 일정
starts_at: 이벤트 시작
text: 공지사항
defaults: defaults:
autofollow: 초대를 통한 팔로우 autofollow: 초대를 통한 팔로우
avatar: 아바타 avatar: 아바타

View file

@ -2,21 +2,39 @@
nn: nn:
simple_form: simple_form:
hints: hints:
account_alias:
acct: Spesifiser brukernavn@domene til brukeren du vil flytte fra
account_migration:
acct: Spesifiser brukernavn@domene til brukeren du vil flytte til
account_warning_preset:
text: Du kan bruke tut syntaks, f.eks. URLer, emneknagger og nevnelser
admin_account_action: admin_account_action:
include_statuses: Brukeren vil se hvilke tuter som forårsaket moderator-handlingen eller -advarselen include_statuses: Brukeren vil se hvilke tuter som forårsaket moderator-handlingen eller -advarselen
send_email_notification: Brukeren vil motta en forklaring på hva som har skjedd med deres bruker
text_html: Valgfritt. Du kan bruke tut syntaks. Du kan <a href="%{path}">legge til advarsels-forhåndsinnstillinger</a> for å spare tid
type_html: Velg hva du vil gjøre med <strong>%{acct}</strong> type_html: Velg hva du vil gjøre med <strong>%{acct}</strong>
warning_preset_id: Valfritt. Du kan leggja inn eigen tekst på enden av føreoppsettet warning_preset_id: Valfritt. Du kan leggja inn eigen tekst på enden av føreoppsettet
announcement:
all_day: Hvis noen av dem er valgt, vil kun datoene av tidsrammen bli vist
ends_at: Valgfritt. Kunngjøring vil bli automatisk avpublisert på dette tidspunktet
scheduled_at: La stå tomt for å publisere kunngjøringen umiddelbart
starts_at: Valgfritt. I tilfellet din kunngjøring er bundet til en spesifikk tidsramme
text: Du kan bruke tut syntaks. Vennligst vær oppmerksom på plassen som kunngjøringen vil ta opp på brukeren sin skjerm
defaults: defaults:
autofollow: Folk som lager en konto gjennom invitasjonen, vil automatisk følge deg autofollow: Folk som lager en konto gjennom invitasjonen, vil automatisk følge deg
avatar: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px avatar: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px
bot: Denne kontoen utfører i hovedsak automatiserte handlinger og blir kanskje ikke holdt øye med bot: Denne kontoen utfører i hovedsak automatiserte handlinger og blir kanskje ikke holdt øye med
context: En eller flere sammenhenger der filteret skal gjelde
current_password: For sikkerhetsgrunner, vennligst oppgi passordet til den nåværende bruker
current_username: Skriv inn brukarnamnet til den noverande kontoen for å stadfesta current_username: Skriv inn brukarnamnet til den noverande kontoen for å stadfesta
digest: Kun sendt etter en lang periode med inaktivitet og bare dersom du har mottatt noen personlige meldinger mens du var borte digest: Kun sendt etter en lang periode med inaktivitet og bare dersom du har mottatt noen personlige meldinger mens du var borte
discoverable: Profilmappen er en annen måte for kontoen din å nå et bredere publikum på discoverable: Profilmappen er en annen måte for kontoen din å nå et bredere publikum på
email: Du får snart ein stadfestings-e-post email: Du får snart ein stadfestings-e-post
fields: Du kan ha opptil 4 gjenstander vist som en tabell på profilsiden din fields: Du kan ha opptil 4 gjenstander vist som en tabell på profilsiden din
header: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px header: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px
inbox_url: Kopier URLen fra forsiden til overgangen du vil bruke
irreversible: Filtrerte tuter vil ugjenkallelig forsvinne, selv om filteret senere blir fjernet irreversible: Filtrerte tuter vil ugjenkallelig forsvinne, selv om filteret senere blir fjernet
locale: Språket til brukergrensesnittet, e-mailer og push-varsler
locked: Krever at du manuelt godkjenner følgere locked: Krever at du manuelt godkjenner følgere
password: Nytt minst 8 teikn password: Nytt minst 8 teikn
phrase: Vil bli samsvart med, uansett bruk av store/små bokstaver eller innholdsadvarselen til en tut phrase: Vil bli samsvart med, uansett bruk av store/små bokstaver eller innholdsadvarselen til en tut
@ -33,6 +51,8 @@ nn:
setting_use_pending_items: Skjul tidslinjeoppdateringer bak et klikk, i stedet for å automatisk la strømmen skrolle setting_use_pending_items: Skjul tidslinjeoppdateringer bak et klikk, i stedet for å automatisk la strømmen skrolle
username: Brukarnamnet ditt vert unikt på %{domain} username: Brukarnamnet ditt vert unikt på %{domain}
whole_word: Når søkeordet eller setningen bare er alfanumerisk, aktiveres det bare hvis det samsvarer med hele ordet whole_word: Når søkeordet eller setningen bare er alfanumerisk, aktiveres det bare hvis det samsvarer med hele ordet
domain_allow:
domain: Dette domenet vil være i stand til å hente data fra denne serveren og dets innkommende data vil bli prosessert og lagret
featured_tag: featured_tag:
name: 'Kanskje du vil nytta ein av desse:' name: 'Kanskje du vil nytta ein av desse:'
form_challenge: form_challenge:
@ -43,6 +63,8 @@ nn:
text: Dette kjem til å hjelpa oss med å gå gjennom søknaden din text: Dette kjem til å hjelpa oss med å gå gjennom søknaden din
sessions: sessions:
otp: Angi tofaktorkoden fra din telefon eller bruk en av dine gjenopprettingskoder. otp: Angi tofaktorkoden fra din telefon eller bruk en av dine gjenopprettingskoder.
tag:
name: Du kan bare forandre bruken av store/små bokstaver, f.eks. for å gjøre det mer lesbart
user: user:
chosen_languages: Hvis noen av dem er valgt, vil kun tuter i de valgte språkene bli vist i de offentlige tidslinjene chosen_languages: Hvis noen av dem er valgt, vil kun tuter i de valgte språkene bli vist i de offentlige tidslinjene
labels: labels:
@ -50,9 +72,14 @@ nn:
fields: fields:
name: Merkelapp name: Merkelapp
value: Innhald value: Innhald
account_alias:
acct: Brukernavnet til den gamle brukeren
account_migration:
acct: Brukernavnet til den nye brukeren
account_warning_preset: account_warning_preset:
text: Føreåtstekst text: Føreåtstekst
admin_account_action: admin_account_action:
include_statuses: Inkluder rapporterte tuter i e-mailen
send_email_notification: Varsl brukaren med e-post send_email_notification: Varsl brukaren med e-post
text: Eigen åtvaring text: Eigen åtvaring
type: Handling type: Handling
@ -62,6 +89,12 @@ nn:
silence: Togn silence: Togn
suspend: Utvis og slett kontodata for godt suspend: Utvis og slett kontodata for godt
warning_preset_id: Bruk åtvaringsoppsett warning_preset_id: Bruk åtvaringsoppsett
announcement:
all_day: Heldagshendelse
ends_at: Slutten av hendelsen
scheduled_at: Planlegg publisering
starts_at: Begynnelse av hendelsen
text: Kunngjøring
defaults: defaults:
autofollow: Bed om å fylgja kontoen din autofollow: Bed om å fylgja kontoen din
avatar: Bilete avatar: Bilete
@ -78,6 +111,8 @@ nn:
expires_in: Vert ugyldig etter expires_in: Vert ugyldig etter
fields: Profilmetadata fields: Profilmetadata
header: Overskrift header: Overskrift
inbox_url: URL til overgangsinnboksen
irreversible: Forkast i stedet for å skjule
locale: Språk locale: Språk
locked: Lås konto locked: Lås konto
max_uses: Grense på brukartal max_uses: Grense på brukartal
@ -134,8 +169,11 @@ nn:
pending_account: Send e-post når ein ny konto treng gjennomgang pending_account: Send e-post når ein ny konto treng gjennomgang
reblog: Send e-post når nokon framhevar statusen din reblog: Send e-post når nokon framhevar statusen din
report: Send e-post når nokon rapporterer noko report: Send e-post når nokon rapporterer noko
trending_tag: En ugjennomgått emneknagg trender
tag: tag:
listable: Tillat denne emneknaggen å vises i søk og på profilmappen
name: Emneknagg name: Emneknagg
trendable: Tillat denne emneknaggen til å vises under trender
usable: Gje tut lov til å nytta denne emneknaggen usable: Gje tut lov til å nytta denne emneknaggen
'no': Nei 'no': Nei
recommended: Tilrådt recommended: Tilrådt

View file

@ -2,20 +2,39 @@
'no': 'no':
simple_form: simple_form:
hints: hints:
account_alias:
acct: Spesifiser brukernavn@domene til brukeren du vil flytte fra
account_migration:
acct: Spesifiser brukernavn@domene til brukeren du vil flytte til
account_warning_preset:
text: Du kan bruke tut syntaks, f.eks. URLer, emneknagger og nevnelser
admin_account_action: admin_account_action:
include_statuses: Brukeren vil se hvilke tuter som forårsaket moderator-handlingen eller -advarselen include_statuses: Brukeren vil se hvilke tuter som forårsaket moderator-handlingen eller -advarselen
send_email_notification: Brukeren vil motta en forklaring på hva som har skjedd med deres bruker
text_html: Valgfritt. Du kan bruke tut syntaks. Du kan <a href="%{path}">legge til advarsels-forhåndsinnstillinger</a> for å spare tid
type_html: Velg hva du vil gjøre med <strong>%{acct}</strong> type_html: Velg hva du vil gjøre med <strong>%{acct}</strong>
warning_preset_id: Valgfritt. Du kan fortsatt legge til tilpasset tekst til slutten av forhåndsinnstillingen
announcement:
all_day: Hvis noen av dem er valgt, vil kun datoene av tidsrammen bli vist
ends_at: Valgfritt. Kunngjøring vil bli automatisk avpublisert på dette tidspunktet
scheduled_at: La stå tomt for å publisere kunngjøringen umiddelbart
starts_at: Valgfritt. I tilfellet din kunngjøring er bundet til en spesifikk tidsramme
text: Du kan bruke tut syntaks. Vennligst vær oppmerksom på plassen som kunngjøringen vil ta opp på brukeren sin skjerm
defaults: defaults:
autofollow: Folk som lager en konto gjennom invitasjonen, vil automatisk følge deg autofollow: Folk som lager en konto gjennom invitasjonen, vil automatisk følge deg
avatar: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px avatar: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px
bot: Denne kontoen utfører i hovedsak automatiserte handlinger og blir kanskje ikke holdt øye med bot: Denne kontoen utfører i hovedsak automatiserte handlinger og blir kanskje ikke holdt øye med
context: En eller flere sammenhenger der filteret skal gjelde
current_password: For sikkerhetsgrunner, vennligst oppgi passordet til den nåværende bruker
current_username: For å bekrefte, vennligst skriv inn brukernavnet til den nåværende kontoen current_username: For å bekrefte, vennligst skriv inn brukernavnet til den nåværende kontoen
digest: Kun sendt etter en lang periode med inaktivitet og bare dersom du har mottatt noen personlige meldinger mens du var borte digest: Kun sendt etter en lang periode med inaktivitet og bare dersom du har mottatt noen personlige meldinger mens du var borte
discoverable: Profilmappen er en annen måte for kontoen din å nå et bredere publikum på discoverable: Profilmappen er en annen måte for kontoen din å nå et bredere publikum på
email: Du vil bli tilsendt en bekreftelses-E-post email: Du vil bli tilsendt en bekreftelses-E-post
fields: Du kan ha opptil 4 gjenstander vist som en tabell på profilsiden din fields: Du kan ha opptil 4 gjenstander vist som en tabell på profilsiden din
header: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px header: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px
inbox_url: Kopier URLen fra forsiden til overgangen du vil bruke
irreversible: Filtrerte tuter vil ugjenkallelig forsvinne, selv om filteret senere blir fjernet irreversible: Filtrerte tuter vil ugjenkallelig forsvinne, selv om filteret senere blir fjernet
locale: Språket til brukergrensesnittet, e-mailer og push-varsler
locked: Krever at du manuelt godkjenner følgere locked: Krever at du manuelt godkjenner følgere
password: Bruk minst 8 tegn password: Bruk minst 8 tegn
phrase: Vil bli samsvart med, uansett bruk av store/små bokstaver eller innholdsadvarselen til en tut phrase: Vil bli samsvart med, uansett bruk av store/små bokstaver eller innholdsadvarselen til en tut
@ -32,14 +51,20 @@
setting_use_pending_items: Skjul tidslinjeoppdateringer bak et klikk, i stedet for å automatisk la strømmen skrolle setting_use_pending_items: Skjul tidslinjeoppdateringer bak et klikk, i stedet for å automatisk la strømmen skrolle
username: Brukernavnet ditt vil være unikt på %{domain} username: Brukernavnet ditt vil være unikt på %{domain}
whole_word: Når søkeordet eller setningen bare er alfanumerisk, aktiveres det bare hvis det samsvarer med hele ordet whole_word: Når søkeordet eller setningen bare er alfanumerisk, aktiveres det bare hvis det samsvarer med hele ordet
domain_allow:
domain: Dette domenet vil være i stand til å hente data fra denne serveren og dets innkommende data vil bli prosessert og lagret
featured_tag: featured_tag:
name: 'Du vil kanskje ønske å bruke en av disse:' name: 'Du vil kanskje ønske å bruke en av disse:'
form_challenge: form_challenge:
current_password: Du går inn i et sikkert område current_password: Du går inn i et sikkert område
imports: imports:
data: CSV-fil eksportert fra en annen Mastodon-instans data: CSV-fil eksportert fra en annen Mastodon-instans
invite_request:
text: Dette vil hjelpe oss med å gjennomgå din søknad
sessions: sessions:
otp: Angi tofaktorkoden fra din telefon eller bruk en av dine gjenopprettingskoder. otp: Angi tofaktorkoden fra din telefon eller bruk en av dine gjenopprettingskoder.
tag:
name: Du kan bare forandre bruken av store/små bokstaver, f.eks. for å gjøre det mer lesbart
user: user:
chosen_languages: Hvis noen av dem er valgt, vil kun tuter i de valgte språkene bli vist i de offentlige tidslinjene chosen_languages: Hvis noen av dem er valgt, vil kun tuter i de valgte språkene bli vist i de offentlige tidslinjene
labels: labels:
@ -47,9 +72,14 @@
fields: fields:
name: Etikett name: Etikett
value: Innhold value: Innhold
account_alias:
acct: Brukernavnet til den gamle brukeren
account_migration:
acct: Brukernavnet til den nye brukeren
account_warning_preset: account_warning_preset:
text: Forhåndsvalgt tekst text: Forhåndsvalgt tekst
admin_account_action: admin_account_action:
include_statuses: Inkluder rapporterte tuter i e-mailen
send_email_notification: Si ifra til brukeren over E-post send_email_notification: Si ifra til brukeren over E-post
text: Tilpasset advarsel text: Tilpasset advarsel
type: Handling type: Handling
@ -57,6 +87,14 @@
disable: Deaktiver pålogging disable: Deaktiver pålogging
none: Ikke gjør noe none: Ikke gjør noe
silence: Stilne silence: Stilne
suspend: Suspender og ugjenkallelig slett brukerdata
warning_preset_id: Bruk en advarsels-forhåndsinnstilling
announcement:
all_day: Heldagshendelse
ends_at: Slutten av hendelsen
scheduled_at: Planlegg publisering
starts_at: Begynnelse av hendelsen
text: Kunngjøring
defaults: defaults:
autofollow: Inviter til å følge kontoen din autofollow: Inviter til å følge kontoen din
avatar: Profilbilde avatar: Profilbilde
@ -73,6 +111,8 @@
expires_in: Utløper etter expires_in: Utløper etter
fields: Profilmetadata fields: Profilmetadata
header: Overskrift header: Overskrift
inbox_url: URL til overgangsinnboksen
irreversible: Forkast i stedet for å skjule
locale: Språk locale: Språk
locked: Lås konto locked: Lås konto
max_uses: Maksimalt antall bruk max_uses: Maksimalt antall bruk
@ -126,9 +166,14 @@
follow: Send e-post når noen følger deg follow: Send e-post når noen følger deg
follow_request: Send e-post når noen ber om å få følge deg follow_request: Send e-post når noen ber om å få følge deg
mention: Send e-post når noen nevner deg mention: Send e-post når noen nevner deg
pending_account: Ny bruker avventer gjennomgang
reblog: Send e-post når noen fremhever din status reblog: Send e-post når noen fremhever din status
report: Ny rapport er sendt inn
trending_tag: En ugjennomgått emneknagg trender
tag: tag:
listable: Tillat denne emneknaggen å vises i søk og på profilmappen
name: Emneknagg name: Emneknagg
trendable: Tillat denne emneknaggen til å vises under trender
usable: Tillat tuter å bruke denne emneknaggen usable: Tillat tuter å bruke denne emneknaggen
'no': Nei 'no': Nei
recommended: Anbefalt recommended: Anbefalt

View file

@ -14,6 +14,12 @@ ru:
text_html: Необязательно. Вы можете использовать синтаксис постов. Для экономии времени, <a href="%{path}">добавьте шаблоны предупреждений</a> text_html: Необязательно. Вы можете использовать синтаксис постов. Для экономии времени, <a href="%{path}">добавьте шаблоны предупреждений</a>
type_html: Выберите применяемое к <strong>%{acct}</strong> действие type_html: Выберите применяемое к <strong>%{acct}</strong> действие
warning_preset_id: Необязательно. Вы можете добавить собственный текст в конце шаблона warning_preset_id: Необязательно. Вы можете добавить собственный текст в конце шаблона
announcement:
all_day: Если выбрано, часы начала и завершения будут скрыты
ends_at: Необязательно. Объявление будет автоматически отменено в это время
scheduled_at: Оставьте поля незаполненными, чтобы опубликовать объявление сразу
starts_at: Необязательно. На случай, если ваше объявление привязано к какому-то временному интервалу
text: Вы можете использовать тот же синтаксис, что и в постах. Будьте предусмотрительны насчёт места, которое займёт объявление на экране пользователей
defaults: defaults:
autofollow: Люди, пришедшие по этому приглашению, автоматически будут подписаны на вас autofollow: Люди, пришедшие по этому приглашению, автоматически будут подписаны на вас
avatar: Поддерживается PNG, GIF и JPG. Максимальный размер — %{size}. Будет уменьшен до %{dimensions}px avatar: Поддерживается PNG, GIF и JPG. Максимальный размер — %{size}. Будет уменьшен до %{dimensions}px
@ -83,6 +89,12 @@ ru:
silence: Скрыть silence: Скрыть
suspend: Заблокировать и безвозвратно удалить все данные учётной записи suspend: Заблокировать и безвозвратно удалить все данные учётной записи
warning_preset_id: Использовать шаблон warning_preset_id: Использовать шаблон
announcement:
all_day: Весь день
ends_at: Время завершения
scheduled_at: Отложенная публикация
starts_at: Время начала
text: Объявление
defaults: defaults:
autofollow: С подпиской на вашу учётную запись autofollow: С подпиской на вашу учётную запись
avatar: Аватар avatar: Аватар

View file

@ -83,6 +83,8 @@ th:
silence: เงียบ silence: เงียบ
suspend: ระงับและลบข้อมูลบัญชีอย่างถาวร suspend: ระงับและลบข้อมูลบัญชีอย่างถาวร
warning_preset_id: ใช้คำเตือนที่ตั้งไว้ล่วงหน้า warning_preset_id: ใช้คำเตือนที่ตั้งไว้ล่วงหน้า
announcement:
text: ประกาศ
defaults: defaults:
autofollow: เชิญให้ติดตามบัญชีของคุณ autofollow: เชิญให้ติดตามบัญชีของคุณ
avatar: ภาพประจำตัว avatar: ภาพประจำตัว

View file

@ -14,6 +14,12 @@ tr:
text_html: İsteğe bağlı. Toot sözdizimleri kullanabilirsiniz. Zamandan kazanmak için <a href="%{path}">uyarı ön-ayarları ekleyebilirsiniz</a> text_html: İsteğe bağlı. Toot sözdizimleri kullanabilirsiniz. Zamandan kazanmak için <a href="%{path}">uyarı ön-ayarları ekleyebilirsiniz</a>
type_html: "<strong>%{acct}</strong> ile ne yapılacağını seçin" type_html: "<strong>%{acct}</strong> ile ne yapılacağını seçin"
warning_preset_id: İsteğe bağlı. Hazır ayarın sonuna hala özel metin ekleyebilirsiniz warning_preset_id: İsteğe bağlı. Hazır ayarın sonuna hala özel metin ekleyebilirsiniz
announcement:
all_day: İşaretlendiğinde, yalnızca zaman aralığındaki tarihler görüntülenir
ends_at: İsteğe bağlı. Duyuru, bu tarihte otomatik olarak yayından kaldırılacak
scheduled_at: Duyuruyu hemen yayınlamak için boş bırakın
starts_at: İsteğe bağlı. Duyurunuzun belirli bir zaman aralığına bağlı olması durumunda
text: Toot söz dizimini kullanabilirsiniz. Lütfen duyurunun kullanıcının ekranında yer alacağı alanı göz önünde bulundurun
defaults: defaults:
autofollow: Davetiyeyle kaydolan kişiler sizi otomatik olarak takip eder autofollow: Davetiyeyle kaydolan kişiler sizi otomatik olarak takip eder
avatar: En fazla %{size} olacak şekilde PNG, GIF veya JPG formatında yükleyiniz. %{dimensions}px büyüklüğüne indirgenecektir avatar: En fazla %{size} olacak şekilde PNG, GIF veya JPG formatında yükleyiniz. %{dimensions}px büyüklüğüne indirgenecektir
@ -83,6 +89,12 @@ tr:
silence: Sessiz silence: Sessiz
suspend: Hesap verilerini askıya alın ve geri alınamaz şekilde silin suspend: Hesap verilerini askıya alın ve geri alınamaz şekilde silin
warning_preset_id: Bir uyarı ön-ayarı kullan warning_preset_id: Bir uyarı ön-ayarı kullan
announcement:
all_day: Tüm gün etkinliği
ends_at: Etkinlik sonu
scheduled_at: Yayınlamayı zamanla
starts_at: Etkinlik başlangıcı
text: Duyuru
defaults: defaults:
autofollow: Hesabınızı takip etmeye davet edin autofollow: Hesabınızı takip etmeye davet edin
avatar: Profil resmi avatar: Profil resmi

View file

@ -14,6 +14,12 @@ uk:
text_html: Необов'язково. Ви можете використовувати синтакс дмухів. Ви можете <a href="%{path}">додати шаблони попереджень</a>, щоб заощадити час text_html: Необов'язково. Ви можете використовувати синтакс дмухів. Ви можете <a href="%{path}">додати шаблони попереджень</a>, щоб заощадити час
type_html: Оберіть, що робити з <strong>%{acct}</strong> type_html: Оберіть, що робити з <strong>%{acct}</strong>
warning_preset_id: Необов'язково. Ви можете ще додати будь-який текст до кінця шаблону warning_preset_id: Необов'язково. Ви можете ще додати будь-який текст до кінця шаблону
announcement:
all_day: Якщо вибрано, відображаються лише дати діапазону часу
ends_at: Необов'язково. Оголошення буде автоматично знято з публікації
scheduled_at: Залиште поля незаповненими, щоб опублікувати оголошення відразу
starts_at: Необов'язково. У разі якщо оголошення прив'язується до певного періоду часу
text: Ви можете використовувати той же синтаксис, що і в постах. Будьте завбачливі щодо місця, яке займе оголошення на екрані користувачів
defaults: defaults:
autofollow: Люди, що зареєструвалися за вашим запрошенням, автоматично підпишуться на вас autofollow: Люди, що зареєструвалися за вашим запрошенням, автоматично підпишуться на вас
avatar: PNG, GIF, або JPG. Максимум - %{size}. Буде зменшено до %{dimensions}px avatar: PNG, GIF, або JPG. Максимум - %{size}. Буде зменшено до %{dimensions}px
@ -83,6 +89,12 @@ uk:
silence: Глушення silence: Глушення
suspend: Призупинити та незворотньо видалити дані облікового запису suspend: Призупинити та незворотньо видалити дані облікового запису
warning_preset_id: Використати шаблон попередження warning_preset_id: Використати шаблон попередження
announcement:
all_day: Увесь день
ends_at: Завершення події
scheduled_at: Відкладена публікація
starts_at: Час початку
text: Оголошення
defaults: defaults:
autofollow: Запросити слідкувати за вашим обліковим записом autofollow: Запросити слідкувати за вашим обліковим записом
avatar: Аватар avatar: Аватар

View file

@ -234,6 +234,14 @@ sk:
update_status: "%{name} aktualizoval/a status pre %{target}" update_status: "%{name} aktualizoval/a status pre %{target}"
deleted_status: "(zmazaný príspevok)" deleted_status: "(zmazaný príspevok)"
title: Kontrólny záznam title: Kontrólny záznam
announcements:
live: Naživo
new:
create: Vytvor oznam
title: Nové oznámenie
published: Zverejnený
time_range: Časový rozsah
title: Oboznámenia
custom_emojis: custom_emojis:
assign_category: Priraď kategóriu assign_category: Priraď kategóriu
by_domain: Doména by_domain: Doména

View file

@ -154,6 +154,7 @@ th:
staff: พนักงาน staff: พนักงาน
user: ผู้ใช้ user: ผู้ใช้
search: ค้นหา search: ค้นหา
search_same_ip: ผู้ใช้อื่น ๆ ที่มี IP เดียวกัน
shared_inbox_url: URL กล่องขาเข้าที่แบ่งปัน shared_inbox_url: URL กล่องขาเข้าที่แบ่งปัน
show: show:
created_reports: รายงานที่สร้าง created_reports: รายงานที่สร้าง
@ -178,10 +179,13 @@ th:
change_email_user: "%{name} ได้เปลี่ยนที่อยู่อีเมลของผู้ใช้ %{target}" change_email_user: "%{name} ได้เปลี่ยนที่อยู่อีเมลของผู้ใช้ %{target}"
confirm_user: "%{name} ได้ยืนยันที่อยู่อีเมลของผู้ใช้ %{target}" confirm_user: "%{name} ได้ยืนยันที่อยู่อีเมลของผู้ใช้ %{target}"
create_account_warning: "%{name} ได้ส่งคำเตือนไปยัง %{target}" create_account_warning: "%{name} ได้ส่งคำเตือนไปยัง %{target}"
create_announcement: "%{name} ได้สร้างประกาศใหม่ %{target}"
create_custom_emoji: "%{name} ได้อัปโหลดอีโมจิใหม่ %{target}"
create_domain_allow: "%{name} ได้ขึ้นบัญชีขาวโดเมน %{target}" create_domain_allow: "%{name} ได้ขึ้นบัญชีขาวโดเมน %{target}"
create_domain_block: "%{name} ได้ปิดกั้นโดเมน %{target}" create_domain_block: "%{name} ได้ปิดกั้นโดเมน %{target}"
create_email_domain_block: "%{name} ได้ขึ้นบัญชีดำโดเมนอีเมล %{target}" create_email_domain_block: "%{name} ได้ขึ้นบัญชีดำโดเมนอีเมล %{target}"
demote_user: "%{name} ได้ลดขั้นผู้ใช้ %{target}" demote_user: "%{name} ได้ลดขั้นผู้ใช้ %{target}"
destroy_announcement: "%{name} ได้ลบประกาศ %{target}"
destroy_custom_emoji: "%{name} ได้ทำลายอีโมจิ %{target}" destroy_custom_emoji: "%{name} ได้ทำลายอีโมจิ %{target}"
destroy_domain_allow: "%{name} ได้เอาโดเมน %{target} ออกจากบัญชีขาว" destroy_domain_allow: "%{name} ได้เอาโดเมน %{target} ออกจากบัญชีขาว"
destroy_domain_block: "%{name} ได้เลิกปิดกั้นโดเมน %{target}" destroy_domain_block: "%{name} ได้เลิกปิดกั้นโดเมน %{target}"
@ -199,10 +203,22 @@ th:
suspend_account: "%{name} ได้ระงับบัญชีของ %{target}" suspend_account: "%{name} ได้ระงับบัญชีของ %{target}"
unassigned_report: "%{name} ได้เลิกมอบหมายรายงาน %{target}" unassigned_report: "%{name} ได้เลิกมอบหมายรายงาน %{target}"
unsuspend_account: "%{name} ได้เลิกระงับบัญชีของ %{target}" unsuspend_account: "%{name} ได้เลิกระงับบัญชีของ %{target}"
update_announcement: "%{name} ได้อัปเดตประกาศ %{target}"
update_custom_emoji: "%{name} ได้อัปเดตอีโมจิ %{target}" update_custom_emoji: "%{name} ได้อัปเดตอีโมจิ %{target}"
update_status: "%{name} ได้อัปเดตสถานะโดย %{target}" update_status: "%{name} ได้อัปเดตสถานะโดย %{target}"
deleted_status: "(สถานะที่ลบแล้ว)" deleted_status: "(สถานะที่ลบแล้ว)"
title: รายการบันทึกการตรวจสอบ title: รายการบันทึกการตรวจสอบ
announcements:
edit:
title: แก้ไขประกาศ
empty: ไม่พบประกาศ
live: สด
new:
create: สร้างประกาศ
title: ประกาศใหม่
published: เผยแพร่เมื่อ
time_range: ช่วงเวลา
title: ประกาศ
custom_emojis: custom_emojis:
assign_category: กำหนดหมวดหมู่ assign_category: กำหนดหมวดหมู่
by_domain: โดเมน by_domain: โดเมน
@ -328,6 +344,8 @@ th:
title: คำเชิญ title: คำเชิญ
pending_accounts: pending_accounts:
title: บัญชีที่รอดำเนินการ (%{count}) title: บัญชีที่รอดำเนินการ (%{count})
relationships:
title: ความสัมพันธ์ของ %{acct}
relays: relays:
add_new: เพิ่มรีเลย์ใหม่ add_new: เพิ่มรีเลย์ใหม่
delete: ลบ delete: ลบ
@ -539,6 +557,9 @@ th:
confirm: ดำเนินการต่อ confirm: ดำเนินการต่อ
invalid_password: รหัสผ่านไม่ถูกต้อง invalid_password: รหัสผ่านไม่ถูกต้อง
prompt: ยืนยันรหัสผ่านเพื่อดำเนินการต่อ prompt: ยืนยันรหัสผ่านเพื่อดำเนินการต่อ
date:
formats:
default: "%d %b %Y"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count} ชั่วโมง" about_x_hours: "%{count} ชั่วโมง"
@ -600,6 +621,7 @@ th:
add_new: เพิ่มใหม่ add_new: เพิ่มใหม่
filters: filters:
contexts: contexts:
account: โปรไฟล์
home: เส้นเวลาหน้าแรก home: เส้นเวลาหน้าแรก
notifications: การแจ้งเตือน notifications: การแจ้งเตือน
public: เส้นเวลาสาธารณะ public: เส้นเวลาสาธารณะ
@ -621,6 +643,8 @@ th:
all: ทั้งหมด all: ทั้งหมด
changes_saved_msg: บันทึกการเปลี่ยนแปลงสำเร็จ! changes_saved_msg: บันทึกการเปลี่ยนแปลงสำเร็จ!
copy: คัดลอก copy: คัดลอก
delete: ลบ
edit: แก้ไข
order_by: เรียงลำดับตาม order_by: เรียงลำดับตาม
save_changes: บันทึกการเปลี่ยนแปลง save_changes: บันทึกการเปลี่ยนแปลง
html_validator: html_validator:
@ -722,10 +746,14 @@ th:
other: อื่น ๆ other: อื่น ๆ
posting_defaults: ค่าเริ่มต้นการโพสต์ posting_defaults: ค่าเริ่มต้นการโพสต์
public_timelines: เส้นเวลาสาธารณะ public_timelines: เส้นเวลาสาธารณะ
reactions:
errors:
unrecognized_emoji: ไม่ใช่อีโมจิที่รู้จัก
relationships: relationships:
activity: กิจกรรมบัญชี activity: กิจกรรมบัญชี
followers: ผู้ติดตาม followers: ผู้ติดตาม
following: กำลังติดตาม following: กำลังติดตาม
invited: เชิญแล้ว
last_active: ใช้งานล่าสุด last_active: ใช้งานล่าสุด
most_recent: ล่าสุด most_recent: ล่าสุด
moved: ย้ายแล้ว moved: ย้ายแล้ว

View file

@ -198,11 +198,13 @@ tr:
change_email_user: "%{name}, %{target} kullanıcısının e-posta adresini değiştirdi" change_email_user: "%{name}, %{target} kullanıcısının e-posta adresini değiştirdi"
confirm_user: "%{name} %{target} kullanıcısının e-posta adresini onayladı" confirm_user: "%{name} %{target} kullanıcısının e-posta adresini onayladı"
create_account_warning: "%{name} %{target} 'a bir uyarı gönderdi" create_account_warning: "%{name} %{target} 'a bir uyarı gönderdi"
create_announcement: "%{name}, yeni %{target} duyurusunu oluşturdu"
create_custom_emoji: "%{name} yeni ifade yükledi %{target}" create_custom_emoji: "%{name} yeni ifade yükledi %{target}"
create_domain_allow: "%{target} alan adı, %{name} tarafından beyaz listeye alındı" create_domain_allow: "%{target} alan adı, %{name} tarafından beyaz listeye alındı"
create_domain_block: "%{target} alanı, %{name} tarafından engellendi" create_domain_block: "%{target} alanı, %{name} tarafından engellendi"
create_email_domain_block: "%{target} e-posta alanı, %{name} tarafından kara listeye alınmış" create_email_domain_block: "%{target} e-posta alanı, %{name} tarafından kara listeye alınmış"
demote_user: "%{name} %{target} kullanıcısını düşürdü" demote_user: "%{name} %{target} kullanıcısını düşürdü"
destroy_announcement: "%{name}, %{target} duyurusunu sildi"
destroy_custom_emoji: "%{target} emoji, %{name} tarafından kaldırıldı" destroy_custom_emoji: "%{target} emoji, %{name} tarafından kaldırıldı"
destroy_domain_allow: "%{target} alan adı, %{name} tarafından beyaz listeden çıkartıldı" destroy_domain_allow: "%{target} alan adı, %{name} tarafından beyaz listeden çıkartıldı"
destroy_domain_block: "%{target} alan adının engeli %{name} tarafından kaldırıldı" destroy_domain_block: "%{target} alan adının engeli %{name} tarafından kaldırıldı"
@ -224,10 +226,22 @@ tr:
unassigned_report: "%{name} %{target} şikayetinin atamasını geri aldı" unassigned_report: "%{name} %{target} şikayetinin atamasını geri aldı"
unsilence_account: "%{name} %{target}'in hesabının susturmasını kaldırdı" unsilence_account: "%{name} %{target}'in hesabının susturmasını kaldırdı"
unsuspend_account: "%{name} %{target}'in hesabının uzaklaştırmasını kaldırdı" unsuspend_account: "%{name} %{target}'in hesabının uzaklaştırmasını kaldırdı"
update_announcement: "%{name}, %{target} duyurusunu güncelledi"
update_custom_emoji: "%{name} %{target} emojiyi güncelledi" update_custom_emoji: "%{name} %{target} emojiyi güncelledi"
update_status: "%{name}, %{target} kullanıcısının durumunu güncelledi" update_status: "%{name}, %{target} kullanıcısının durumunu güncelledi"
deleted_status: "(silinmiş durum)" deleted_status: "(silinmiş durum)"
title: Denetim günlüğü title: Denetim günlüğü
announcements:
edit:
title: Duyuruyu düzenle
empty: Duyuru bulunamadı.
live: Canlı
new:
create: Duyuru oluştur
title: Yeni duyuru
published: Yayınlanan
time_range: Zaman aralığı
title: Duyurular
custom_emojis: custom_emojis:
assign_category: Kategori ata assign_category: Kategori ata
by_domain: Alan adı by_domain: Alan adı
@ -657,6 +671,9 @@ tr:
hint_html: "<strong>İpucu:</strong> Önümüzdeki saat boyunca sana parolanı sormayacağız." hint_html: "<strong>İpucu:</strong> Önümüzdeki saat boyunca sana parolanı sormayacağız."
invalid_password: Geçersiz parola invalid_password: Geçersiz parola
prompt: Devam etmek parolayı doğrulayın prompt: Devam etmek parolayı doğrulayın
date:
formats:
default: "%b %d, %Y"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}sa" about_x_hours: "%{count}sa"
@ -758,6 +775,8 @@ tr:
all: Tümü all: Tümü
changes_saved_msg: Değişiklikler başarıyla kaydedildi! changes_saved_msg: Değişiklikler başarıyla kaydedildi!
copy: Kopyala copy: Kopyala
delete: Sil
edit: Düzenle
no_batch_actions_available: Bu sayfada toplu işlem yok no_batch_actions_available: Bu sayfada toplu işlem yok
order_by: Sıralama ölçütü order_by: Sıralama ölçütü
save_changes: Değişiklikleri kaydet save_changes: Değişiklikleri kaydet
@ -929,6 +948,10 @@ tr:
other: Diğer other: Diğer
posting_defaults: Gönderi varsayılanları posting_defaults: Gönderi varsayılanları
public_timelines: Genel zaman çizelgeleri public_timelines: Genel zaman çizelgeleri
reactions:
errors:
limit_reached: Farklı reaksiyonların sınırına ulaşıldı
unrecognized_emoji: tanınan bir emoji değil
relationships: relationships:
activity: Hesap etkinliği activity: Hesap etkinliği
dormant: Atıl dormant: Atıl

View file

@ -206,11 +206,13 @@ uk:
change_email_user: "%{name} змінив(-ла) поштову адресу користувача %{target}" change_email_user: "%{name} змінив(-ла) поштову адресу користувача %{target}"
confirm_user: "%{name} підтвердив(-ла) статус поштової адреси користувача %{target}" confirm_user: "%{name} підтвердив(-ла) статус поштової адреси користувача %{target}"
create_account_warning: "%{name} надіслав попередження до %{target}" create_account_warning: "%{name} надіслав попередження до %{target}"
create_announcement: "%{name} створив нове оголошення %{target}"
create_custom_emoji: "%{name} вивантажив(-ла) нове емодзі %{target}" create_custom_emoji: "%{name} вивантажив(-ла) нове емодзі %{target}"
create_domain_allow: "%{name} додав(-ла) домен %{target} до білого списку" create_domain_allow: "%{name} додав(-ла) домен %{target} до білого списку"
create_domain_block: "%{name} заблокував(-ла) домен %{target}" create_domain_block: "%{name} заблокував(-ла) домен %{target}"
create_email_domain_block: "%{name} додав(-ла) поштовий домен %{target} до чорного списку" create_email_domain_block: "%{name} додав(-ла) поштовий домен %{target} до чорного списку"
demote_user: "%{name} понизив(-ла) %{target}" demote_user: "%{name} понизив(-ла) %{target}"
destroy_announcement: "%{name} видалив оголошення %{target}"
destroy_custom_emoji: "%{name} знищив(-ла) емодзі %{target}" destroy_custom_emoji: "%{name} знищив(-ла) емодзі %{target}"
destroy_domain_allow: "%{name} видалив(-ла) домен %{target} з білого списку" destroy_domain_allow: "%{name} видалив(-ла) домен %{target} з білого списку"
destroy_domain_block: "%{name} розблокував(-ла) домен %{target}" destroy_domain_block: "%{name} розблокував(-ла) домен %{target}"
@ -232,10 +234,22 @@ uk:
unassigned_report: "%{name} зняв(-ла) призначення скарги %{target}" unassigned_report: "%{name} зняв(-ла) призначення скарги %{target}"
unsilence_account: "%{name} розглушив(-ла) обліковий запис %{target}" unsilence_account: "%{name} розглушив(-ла) обліковий запис %{target}"
unsuspend_account: "%{name} розморозив обліковий запис користувача %{target}" unsuspend_account: "%{name} розморозив обліковий запис користувача %{target}"
update_announcement: "%{name} оновив оголошення %{target}"
update_custom_emoji: "%{name} оновив(-ла) емодзі %{target}" update_custom_emoji: "%{name} оновив(-ла) емодзі %{target}"
update_status: "%{name} змінив(-ла) статус користуача %{target}" update_status: "%{name} змінив(-ла) статус користуача %{target}"
deleted_status: "(видалений статус)" deleted_status: "(видалений статус)"
title: Журнал подій title: Журнал подій
announcements:
edit:
title: Редагувати оголошення
empty: Оголошення не знайдені.
live: Наживо
new:
create: Створити оголошення
title: Нове оголошення
published: Опубліковане
time_range: Діапазон часу
title: Оголошення
custom_emojis: custom_emojis:
assign_category: Призначити категорію assign_category: Призначити категорію
by_domain: Домен by_domain: Домен
@ -263,6 +277,7 @@ uk:
shortcode_hint: Мінімум два символи, тільки цифрові й латинські символи або підкреслення shortcode_hint: Мінімум два символи, тільки цифрові й латинські символи або підкреслення
title: Особливі емодзі title: Особливі емодзі
uncategorized: Без категорії uncategorized: Без категорії
unlist: Прибрати
unlisted: Не у списку unlisted: Не у списку
update_failed_msg: Не вийшло оновити емозді update_failed_msg: Не вийшло оновити емозді
updated_msg: Емодзі успішно оновлене! updated_msg: Емодзі успішно оновлене!
@ -348,6 +363,7 @@ uk:
delete: Видалити delete: Видалити
destroyed_msg: Успішно видалено поштовий домен з чорного списку destroyed_msg: Успішно видалено поштовий домен з чорного списку
domain: Домен domain: Домен
empty: Ніякі e-mail домени не блокуються.
new: new:
create: Додати домен create: Додати домен
title: Нове блокування поштового домену title: Нове блокування поштового домену
@ -382,6 +398,8 @@ uk:
title: Запрошення title: Запрошення
pending_accounts: pending_accounts:
title: Облікові записи у черзі (%{count}) title: Облікові записи у черзі (%{count})
relationships:
title: "%{acct} відносини"
relays: relays:
add_new: Додати новий ретранслятор add_new: Додати новий ретранслятор
delete: Видалити delete: Видалити
@ -455,6 +473,7 @@ uk:
title: Користувацький CSS title: Користувацький CSS
default_noindex: default_noindex:
desc_html: Впливає на усіх користувачів, які не змінили це настроювання самостійно desc_html: Впливає на усіх користувачів, які не змінили це настроювання самостійно
title: Виключити користувачів з індексації пошуковими системами за замовчуванням
domain_blocks: domain_blocks:
all: Всi all: Всi
disabled: Нікого disabled: Нікого
@ -462,6 +481,8 @@ uk:
users: Для авторизованих локальних користувачів users: Для авторизованих локальних користувачів
domain_blocks_rationale: domain_blocks_rationale:
title: Обґрунтування title: Обґрунтування
enable_bootstrap_timeline_accounts:
title: Увімкнути підписки за замовчуванням для нових користувачів
hero: hero:
desc_html: Відображається на головній сторінці. Рекомендовано як мінімум 600x100 пікселів. Якщо не вказано, буде використано передпоказ інстанції desc_html: Відображається на головній сторінці. Рекомендовано як мінімум 600x100 пікселів. Якщо не вказано, буде використано передпоказ інстанції
title: Банер інстанції title: Банер інстанції
@ -492,6 +513,7 @@ uk:
approved: Для входу потрібне схвалення approved: Для входу потрібне схвалення
none: Ніхто не може увійти none: Ніхто не може увійти
open: Будь-хто може увійти open: Будь-хто може увійти
title: Режим реєстрації
show_known_fediverse_at_about_page: show_known_fediverse_at_about_page:
desc_html: Коли увімкнено, будуть показані пости з усього відомого федисвіту у передпоказі. Інакше будуть показані лише локальні дмухи. desc_html: Коли увімкнено, будуть показані пости з усього відомого федисвіту у передпоказі. Інакше будуть показані лише локальні дмухи.
title: Показувати доступний федисвіт у передпоказі стрічки title: Показувати доступний федисвіт у передпоказі стрічки
@ -577,11 +599,13 @@ uk:
body_remote: Хтось з домену %{domain} поскаржився(-лася) на %{target} body_remote: Хтось з домену %{domain} поскаржився(-лася) на %{target}
subject: Нова скарга до %{instance} (#%{id}) subject: Нова скарга до %{instance} (#%{id})
new_trending_tag: new_trending_tag:
body: 'Хештег #%{name} сьогодні є в тренді, але раніше не переглядався. Він не відображатиметься публічно, якщо ви не дозволите це чи просто збережете форму, щоб ніколи більше про нього не чути.'
subject: Новий хештеґ надіслано на розгляд до %{instance} (#%{name}) subject: Новий хештеґ надіслано на розгляд до %{instance} (#%{name})
aliases: aliases:
add_new: Створити псевдонім add_new: Створити псевдонім
created_msg: Новий псевдонім успішно створено. Тепер ви можете починати переміщення зі старого облікового запису. created_msg: Новий псевдонім успішно створено. Тепер ви можете починати переміщення зі старого облікового запису.
deleted_msg: Псевдонім успішно видалено. Переміщення з того облікового запису до цього більше не можливе. deleted_msg: Псевдонім успішно видалено. Переміщення з того облікового запису до цього більше не можливе.
hint_html: Якщо ви збираєтеся мігрувати з іншого облікового запису на цей, ви можете налаштувати псевдонім, що потрібно для перенесення передплатників зі старою облікового запису. Ця дія саме по собі <strong>нешкідливо і оборотно</strong>. <strong>Міграція облікового запису починається з старого облікового запису</strong>.
remove: Від'єднати псевдонім remove: Від'єднати псевдонім
appearance: appearance:
advanced_web_interface: Розширений web-інтерфейс advanced_web_interface: Розширений web-інтерфейс
@ -665,6 +689,9 @@ uk:
hint_html: "<strong>Підказка:</strong> ми не будемо запитувати ваш пароль впродовж наступної години." hint_html: "<strong>Підказка:</strong> ми не будемо запитувати ваш пароль впродовж наступної години."
invalid_password: Невірний пароль invalid_password: Невірний пароль
prompt: Підтвердіть пароль для продовження prompt: Підтвердіть пароль для продовження
date:
formats:
default: "%b %d, %Y"
datetime: datetime:
distance_in_words: distance_in_words:
about_x_hours: "%{count}г" about_x_hours: "%{count}г"
@ -741,6 +768,7 @@ uk:
hint_html: "<strong>Що таке виділені хештеґи?</strong> Це ті, що відображаються ни видному місці у вашому публічному профілі. Вони дають змогу людям фільтрувати ваші публічні пости за цими хештеґами. Це дуже корисно для відстеження мистецьких творів та довготривалих проектів." hint_html: "<strong>Що таке виділені хештеґи?</strong> Це ті, що відображаються ни видному місці у вашому публічному профілі. Вони дають змогу людям фільтрувати ваші публічні пости за цими хештеґами. Це дуже корисно для відстеження мистецьких творів та довготривалих проектів."
filters: filters:
contexts: contexts:
account: Профілі
home: Ваша стрічка home: Ваша стрічка
notifications: Сповіщення notifications: Сповіщення
public: Глобальні стрічки public: Глобальні стрічки
@ -765,6 +793,9 @@ uk:
all: Усі all: Усі
changes_saved_msg: Зміни успішно збережені! changes_saved_msg: Зміни успішно збережені!
copy: Копіювати copy: Копіювати
delete: Видалити
edit: Змінити
no_batch_actions_available: На цій сторінці немає запланованих дій
order_by: Сортувати за order_by: Сортувати за
save_changes: Зберегти зміни save_changes: Зберегти зміни
validation_errors: validation_errors:
@ -780,6 +811,11 @@ uk:
authorize_connection_prompt: Авторизувати це зашифроване з'єднання? authorize_connection_prompt: Авторизувати це зашифроване з'єднання?
errors: errors:
failed: Не вдалося встановити це зашифроване з'єднання. Спробуйте ще раз за допомогою %{provider}. failed: Не вдалося встановити це зашифроване з'єднання. Спробуйте ще раз за допомогою %{provider}.
keybase:
invalid_token: Токени Keybase - це хеші від підписів і повинні бути по довжині в 66 hex-символів
verification_failed: Keybase не розпізнає цей токен як підпис користувача Keybase %{kb_username}. Будь-ласка, спробуйте з Keybase.
wrong_user: Неможливо підтвердити користувача%{proving}, під час входу в систему як %{current}. Виконайте вхід як %{proving} і спробуйте ще раз.
explanation_html: На цій сторінці відображаються криптографічні підтверджені ідентифікатори - наприклад, прив'язаний профіль Keybase. Це дозволяє людям відправляти вам зашифровані повідомлення, а також довіряти вашим постам.
i_am_html: Я %{username} з %{service}. i_am_html: Я %{username} з %{service}.
identity: Ідентичність identity: Ідентичність
inactive: Неактивний inactive: Неактивний
@ -836,9 +872,11 @@ uk:
migrations: migrations:
acct: username@domain нового облікового запису acct: username@domain нового облікового запису
cancel: Скасувати перенаправлення cancel: Скасувати перенаправлення
cancel_explanation: Скасування перенаправлення реактивує ваш поточний обліковий запис, але не поверне підписників, які були переміщені в інший обліковий запис.
cancelled_msg: Перенаправлення успішно скасовано. cancelled_msg: Перенаправлення успішно скасовано.
errors: errors:
already_moved: той самий обліковий запис, до якого ви вже переміщені already_moved: той самий обліковий запис, до якого ви вже переміщені
missing_also_known_as: не є зворотнім посиланням на цей обліковий запис
move_to_self: неможливо перемістити обліковий запис до самого себе move_to_self: неможливо перемістити обліковий запис до самого себе
not_found: не знайдено not_found: не знайдено
on_cooldown: Ви у витверезнику on_cooldown: Ви у витверезнику
@ -858,7 +896,9 @@ uk:
cooldown: Після переїзду ви деякий час не можете переїжджати знову cooldown: Після переїзду ви деякий час не можете переїжджати знову
disabled_account: Поточний обліковий запис не буде повністю придатний до використання. Проте ви матимете доступ до експорту даних та повторної активації. disabled_account: Поточний обліковий запис не буде повністю придатний до використання. Проте ви матимете доступ до експорту даних та повторної активації.
followers: Ця дія призведе до переміщення всіх підписників з поточного облікового запису до нового облікового запису followers: Ця дія призведе до переміщення всіх підписників з поточного облікового запису до нового облікового запису
only_redirect_html: Або ж ви можете <a href="%{path}"> просто налаштувати перенаправлення у ваш профіль</a>.
other_data: Ніякі інші дані не будуть переміщені автоматично other_data: Ніякі інші дані не будуть переміщені автоматично
redirect: Профіль цього облікового запису буде оновлено з заміткою про перенаправлення, а також виключений з пошуку
moderation: moderation:
title: Модерація title: Модерація
notification_mailer: notification_mailer:
@ -926,6 +966,7 @@ uk:
duration_too_long: надто далеко у майбутньому duration_too_long: надто далеко у майбутньому
duration_too_short: надто мала тривалість duration_too_short: надто мала тривалість
expired: Це опитування вже завершено expired: Це опитування вже завершено
invalid_choice: Обраного варіанту голосування не існує
over_character_limit: не може бути довше ніж %{max} символів кожен over_character_limit: не може бути довше ніж %{max} символів кожен
too_few_options: має містити більше ніж один варіант too_few_options: має містити більше ніж один варіант
too_many_options: не може мати більше ніж %{max} варіантів too_many_options: не може мати більше ніж %{max} варіантів
@ -933,11 +974,15 @@ uk:
other: Інше other: Інше
posting_defaults: Промовчання для постів posting_defaults: Промовчання для постів
public_timelines: Глобальні стрічки public_timelines: Глобальні стрічки
reactions:
errors:
unrecognized_emoji: не є розпізнаним емоджі
relationships: relationships:
activity: Діяльність облікового запису activity: Діяльність облікового запису
dormant: Неактивні dormant: Неактивні
followers: Підписники followers: Підписники
following: Підписник(-ця) following: Підписник(-ця)
invited: Запрошені
last_active: Крайня активність last_active: Крайня активність
most_recent: За часом створення most_recent: За часом створення
moved: Переміщено moved: Переміщено
@ -1128,6 +1173,7 @@ uk:
suspend: Ваш обліковий запис було призупинено, а всі ваші дмухи і вивантажені медіафайли - безповоротно видалено з цього сервера та серверів, де ви мали послідовників. suspend: Ваш обліковий запис було призупинено, а всі ваші дмухи і вивантажені медіафайли - безповоротно видалено з цього сервера та серверів, де ви мали послідовників.
get_in_touch: Ви можете відповісти на цей електронний лист, щоб зконтактувати з працівниками %{instance}. get_in_touch: Ви можете відповісти на цей електронний лист, щоб зконтактувати з працівниками %{instance}.
review_server_policies: Переглянути політики сервера review_server_policies: Переглянути політики сервера
statuses: 'Зокрема, для:'
subject: subject:
disable: Ваш обліковий запис %{acct} було заморожено disable: Ваш обліковий запис %{acct} було заморожено
none: Попередження для %{acct} none: Попередження для %{acct}
@ -1163,4 +1209,5 @@ uk:
seamless_external_login: Ви увійшли за допомогою зовнішнього сервісу, тому налаштування паролю та електронної пошти недоступні. seamless_external_login: Ви увійшли за допомогою зовнішнього сервісу, тому налаштування паролю та електронної пошти недоступні.
signed_in_as: 'Ви увійшли як:' signed_in_as: 'Ви увійшли як:'
verification: verification:
explanation_html: 'Володіння посиланнями у профілі <strong>можна підтвердити</strong>. Для цього на зазначеному сайті повинна міститися посилання на ваш профіль Mastodon, а у самому посиланні <strong>повинен</strong> бути атрибут <code>rel="me"</code>. Що всередині посилання - значення не має. Ось вам приклад посилання:'
verification: Підтвердження verification: Підтвердження

View file

@ -0,0 +1,42 @@
# frozen_string_literal: true
require 'rails_helper'
describe ReactionValidator do
let(:announcement) { Fabricate(:announcement) }
describe '#validate' do
it 'adds error when not a valid unicode emoji' do
reaction = announcement.announcement_reactions.build(name: 'F')
subject.validate(reaction)
expect(reaction.errors).to_not be_empty
end
it 'does not add error when non-unicode emoji is a custom emoji' do
custom_emoji = Fabricate(:custom_emoji)
reaction = announcement.announcement_reactions.build(name: custom_emoji.shortcode, custom_emoji_id: custom_emoji.id)
subject.validate(reaction)
expect(reaction.errors).to be_empty
end
it 'adds error when 8 reactions already exist' do
%w(🐘 ❤️ 🙉 😍 😋 😂 😞 👍).each do |name|
announcement.announcement_reactions.create!(name: name, account: Fabricate(:account))
end
reaction = announcement.announcement_reactions.build(name: '😘')
subject.validate(reaction)
expect(reaction.errors).to_not be_empty
end
it 'does not add error when new reaction is part of the existing ones' do
%w(🐘 ❤️ 🙉 😍 😋 😂 😞 👍).each do |name|
announcement.announcement_reactions.create!(name: name, account: Fabricate(:account))
end
reaction = announcement.announcement_reactions.build(name: '😋')
subject.validate(reaction)
expect(reaction.errors).to be_empty
end
end
end