google翻译实用工具

自动移除google翻译原文中的换行符(替换为空格)

  1. // ==UserScript==
  2. // @name google translate utils
  3. // @name:zh-CN google翻译实用工具
  4. // @namespace https://github.com/tabedit/tamperMonkey
  5. // @version 0.6
  6. // @description auto remove line break for google translate(replaced with space)
  7. // @description:zh-CN 自动移除google翻译原文中的换行符(替换为空格)
  8. // @author tabedit
  9. // @include http*://translate.google.*
  10. // @grant none
  11. // ==/UserScript==
  12.  
  13. (function() {
  14. 'use strict';
  15. var container = Array.from(document.querySelectorAll('nav')).filter(v => v.innerHTML.indexOf('翻译类型') !== -1)[0]
  16. var customButton = container.children[2].cloneNode(true);
  17. customButton.querySelector('svg').remove();
  18. customButton.querySelector('button').innerText = '自动替换换行';
  19. container.appendChild(customButton);
  20. if(localStorage.getItem('replaceOn') === 'true'){
  21. customButton.style.backgroundColor='#E4ECFA';
  22. }
  23.  
  24. // button for switch whether turn replace on
  25. customButton.addEventListener('click',function(event){
  26. var replaceOn = localStorage.getItem('replaceOn') === 'true';
  27. if(!replaceOn){
  28. localStorage.setItem('replaceOn', 'true')
  29. customButton.style.backgroundColor='#E4ECFA';
  30. }else{
  31. localStorage.setItem('replaceOn', 'false')
  32. customButton.style.backgroundColor='#FAFAFA';
  33. }
  34. });
  35.  
  36. // Your code here...
  37. function single(){
  38. var replaceOn = localStorage.getItem('replaceOn') === 'true';
  39. if(replaceOn === false){
  40. return
  41. }
  42. var raw = /text=([^&]+)/.exec(location.href);
  43. raw = raw && raw[1]
  44. if(!raw){
  45. return
  46. }
  47. raw = decodeURIComponent(raw);
  48. if(!/\n/.test(raw)){
  49. return
  50. }
  51. var replaced = raw.replace(/\n/g, ' ')
  52. .replace(/ {2,}/g, ' ')
  53. .replace(/\. /g, '.')
  54. replaced = encodeURIComponent(replaced);
  55. var location_href = location.href.replace(/text=([^&]+)/, 'text=' + replaced)
  56. location.href = location_href;
  57. return true
  58. }
  59. function loop(){
  60. setTimeout(()=> {
  61. if(single()){
  62. return
  63. }
  64. loop()
  65. }, 200)
  66. }
  67. loop()
  68. })();