Исправление автоформирования заголовка при вставке из буфера обмена
This commit is contained in:
@@ -26,6 +26,7 @@ import Component from 'vue-class-component';
|
|||||||
|
|
||||||
import Window from '../../../share/Window.vue';
|
import Window from '../../../share/Window.vue';
|
||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
|
import * as utils from '../../../../share/utils';
|
||||||
|
|
||||||
export default @Component({
|
export default @Component({
|
||||||
components: {
|
components: {
|
||||||
@@ -42,7 +43,7 @@ class PasteTextPage extends Vue {
|
|||||||
this.$refs.textArea.focus();
|
this.$refs.textArea.focus();
|
||||||
}
|
}
|
||||||
|
|
||||||
getNonEmptyLine(text, count) {
|
getNonEmptyLine3words(text, count) {
|
||||||
let result = '';
|
let result = '';
|
||||||
const lines = text.split("\n");
|
const lines = text.split("\n");
|
||||||
let i = 0;
|
let i = 0;
|
||||||
@@ -56,21 +57,23 @@ class PasteTextPage extends Vue {
|
|||||||
}
|
}
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
return result;
|
|
||||||
|
result = result.trim().split(' ');
|
||||||
|
return result.slice(0, 3).join(' ');
|
||||||
}
|
}
|
||||||
|
|
||||||
calcTitle(event) {
|
calcTitle(event) {
|
||||||
if (this.bookTitle == '') {
|
if (this.bookTitle == '') {
|
||||||
let text = event.clipboardData.getData('text');
|
let text = event.clipboardData.getData('text');
|
||||||
this.bookTitle = _.compact([
|
this.bookTitle = `Из буфера обмена ${utils.formatDate(new Date(), 'noDate')}: ` + _.compact([
|
||||||
this.getNonEmptyLine(text, 1),
|
this.getNonEmptyLine3words(text, 1),
|
||||||
this.getNonEmptyLine(text, 2)
|
this.getNonEmptyLine3words(text, 2)
|
||||||
]).join(' - ');
|
]).join(' - ');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
loadBuffer() {
|
loadBuffer() {
|
||||||
this.$emit('load-buffer', {buffer: `<title>${this.bookTitle}</title>${this.$refs.textArea.value}`});
|
this.$emit('load-buffer', {buffer: `<cut-title>${this.bookTitle}</cut-title>${this.$refs.textArea.value}`});
|
||||||
this.close();
|
this.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ export const versionHistory = [
|
|||||||
<li>исправлен баг - не распознавались некоторые книги формата fb2 в кодировке utf8</li>
|
<li>исправлен баг - не распознавались некоторые книги формата fb2 в кодировке utf8</li>
|
||||||
<li>добавлены новые варианты анимации перелистывания</li>
|
<li>добавлены новые варианты анимации перелистывания</li>
|
||||||
<li>улучшены прогрессбары</li>
|
<li>улучшены прогрессбары</li>
|
||||||
|
<li>исправления недочетов</li>
|
||||||
</ul>
|
</ul>
|
||||||
`
|
`
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -41,6 +41,8 @@ export function formatDate(d, format) {
|
|||||||
`${d.getHours().toString().padStart(2, '0')}:${d.getMinutes().toString().padStart(2, '0')}`;
|
`${d.getHours().toString().padStart(2, '0')}:${d.getMinutes().toString().padStart(2, '0')}`;
|
||||||
case 'coDate':
|
case 'coDate':
|
||||||
return `${d.getFullYear()}-${(d.getMonth() + 1).toString().padStart(2, '0')}-${d.getDate().toString().padStart(2, '0')}`;
|
return `${d.getFullYear()}-${(d.getMonth() + 1).toString().padStart(2, '0')}-${d.getDate().toString().padStart(2, '0')}`;
|
||||||
|
case 'noDate':
|
||||||
|
return `${d.getDate().toString().padStart(2, '0')}.${(d.getMonth() + 1).toString().padStart(2, '0')}.${d.getFullYear()}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ class ConvertHtml extends ConvertBase {
|
|||||||
} else {
|
} else {
|
||||||
isText = opts.isText;
|
isText = opts.isText;
|
||||||
}
|
}
|
||||||
const {cutTitle} = opts;
|
let {cutTitle} = opts;
|
||||||
|
|
||||||
let titleInfo = {};
|
let titleInfo = {};
|
||||||
let desc = {_n: 'description', 'title-info': titleInfo};
|
let desc = {_n: 'description', 'title-info': titleInfo};
|
||||||
@@ -123,8 +123,11 @@ class ConvertHtml extends ConvertBase {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tag == 'title')
|
if (tag == 'title' || tag == 'cut-title') {
|
||||||
inTitle = true;
|
inTitle = true;
|
||||||
|
if (tag == 'cut-title')
|
||||||
|
cutTitle = true;
|
||||||
|
}
|
||||||
|
|
||||||
if (tag == 'fb2-image') {
|
if (tag == 'fb2-image') {
|
||||||
inImage = true;
|
inImage = true;
|
||||||
@@ -153,7 +156,7 @@ class ConvertHtml extends ConvertBase {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tag == 'title')
|
if (tag == 'title' || tag == 'cut-title')
|
||||||
inTitle = false;
|
inTitle = false;
|
||||||
|
|
||||||
if (tag == 'fb2-image')
|
if (tag == 'fb2-image')
|
||||||
|
|||||||
Reference in New Issue
Block a user