como posso criar documentos de escritório sem extensão específica?

0

Meu sistema operacional principal é o Ubuntu (14.04 LTS), mas às vezes eu tenho que trabalhar no Windows também. Eu uso o Microsoft Live Office e o Google Docs com muita frequência. O problema é quando eu crio alguns documentos, por exemplo LibreOffice Writer e tentar usá-los no Windows (OU OPOSTO), eu recebo problemas com muita frequência, perdendo alguma formatação etc. Também .docx arquivos precisam de recuperação com muita freqüência no Ubuntu. Quero dizer, há muitos pequenos detalhes irritantes. Como posso lidar com eles?

Existe alguma maneira de criar um documento do Office sem uma extensão específica (por exemplo, .docx .odt ) para que funcionem nos dois sistemas sem problemas?

    
por Leonardo 19.12.2015 / 17:25

3 respostas

3

Parece que você está procurando uma melhor compatibilidade com o Microsoft Office. O Google Docs é usado no navegador. Então, isso é perfeitamente compatível entre o Windows e o Ubuntu. O Libreoffice tem versões para Windows e Ubuntu, mais uma vez compatibilidade perfeita.

O Office Online preserva perfeitamente o Microsoft Office .docx e outros tipos de documentos. Portanto, eu postei esta questão para automatizar os seguintes passos.

  1. Prefira isso: link

  2. Anexe a URL do documento do Word:      link

  3. Produto final:      link

Eu recomendo seguir os passos em minha publicação no fórum para manter a formatação do MS Office consistente no Ubuntu.

Às vezes, recebo um arquivo .docx de um colega que precisa ser editado. Eu abro no LibreOffice para fazer minhas edições do conteúdo (sem alterações de formatação) e salvá-lo. No LibreOffice, a formatação provavelmente será diferente do que se fosse aberta no MS Office. Em seguida, abri-lo usando o script do Office Online (postado abaixo). No Office Online, a formatação será preservada, mas com as edições recentes que acabei de fazer. Observe que, se você abrir o mesmo documento mais de uma vez no Office Online, na segunda vez, será necessário alterar o nome do arquivo por pelo menos um caractere. O cache do MS Office Online impede que ele detecte que é realmente um documento atualizado.

O script abaixo pode ser integrado ao menu de contexto de qualquer gerenciador de arquivos. Se você quiser usar o terminal, você pode fazer o seguinte.

  1. Crie um diretório bin se você ainda não estiver em seu diretório inicial e mova o script para lá.
  2. cd ~/bin
  3. Torne o script executável chmod +x MS_Office_Online-Script
  4. Abra um novo terminal. MS_Office_Online-Script /path/to/document.docx

Em geral, eu tentaria fazer a transição para usar o LibreOffice em vez do MS Office. Na verdade, espero que esse script permita eliminar completamente o Windows. ;)

#!/bin/bash

# Name:         Open in Microsoft Office Online
# Author:       (c) 2015 Glutanimate <https://github.com/Glutanimate/>
# Dependencies: dropbox, a web browser (e.g. firefox, chromium...)
# Installation: https://askubuntu.com/q/574252/81372
#
# License:      GNU GPLv3 (http://www.gnu.de/documents/gpl-3.0.en.html)
# Usage:        open_in_microsoft_office_online <file>

# Settings

DbPath="$HOME/Dropbox"
CopyToDb="yes"  # whether to copy file to public dropbox folder
                # in case it's not there already (no/yes)

# Variables

GuiIcon="dropbox"
GuiTitle="Open in Microsoft Office Online"
MsOfficeUrl="https://view.officeapps.live.com/op/view.aspx?src="

File="$1"
Filename="${File##*/}"

# Functions

gui_notify(){
  ## generic notification function
  notify-send -i "$GuiIcon" "$GuiTitle" "$1"
  echo "$1"
}

# Checks

## check if file selected
if [[ ! -f "$File" ]]; then
  gui_notify "Error: No file selected."
  exit 1
fi

## check if Dropbox running
if ! pgrep dropbox > /dev/null 2>&1; then
  gui_notify "Error: Dropbox isn't running."
  exit 1
fi

## check if Dropbox folder set correctly
if [[ ! -d "$DbPath" ]]; then
  gui_notify "Error: Can't find dropbox folder. Please set DbPath in script."
  exit 1
fi

# Main

## get public URL
DbPubUrl="$(dropbox puburl "$File")"

## optional: copy file to public dropbox folder if it isn't there
if [[ "$CopyToDb" = "yes" && "$DbPubUrl" = "Couldn't get public url: Unknown Error" ]]; then
  ## create public Dropbox folder if it doesn't exist
  [[ ! -d "$DbPath/Public" ]] && mkdir "$DbPath/Public"
  ## copy file to public folder, don't overwrite any existing file
  cp -n "$File" "$DbPath/Public/"
  ## wait for sync to complete
  SyncCounter="0"
  while dropbox filestatus "$DbPath/Public/$Filename" | grep syncing; do
    [[ "SyncCounter" = "0" ]] && gui_notify "Syncing file..."
    sleep 5
    ## wait a maximum of 10 minutes for sync to complete
    if [[ "$SyncCounter" -gt "120" ]]; then
      gui_notify "Error: Sync timeout. Exiting."
      exit 1
      break
    fi
    ((SyncCounter++))
  done
  ## get public URL
  DbPubUrl="$(dropbox puburl "$DbPath/Public/$Filename")"
fi

## check if public URL exists and open in Microsoft Office Online
if [[ "$DbPubUrl" != "Couldn't get public url: Unknown Error" ]]; then
  xdg-open "${MsOfficeUrl}${DbPubUrl}" > /dev/null 2>&1 &
  gui_notify "Opening document in Microsoft Office Online..."
else
  gui_notify "Error: Can't generate public Dropbox link from File."
fi 

Abaixo está o script que eu uso atualmente. Na verdade, é mais rápido que o script acima (consulte o comentário "Aguardar a sincronização completa", mas eu tirei algumas instruções if e as simplifiquei. O Dropbox não tem mais a pasta Pública para contas gratuitas e a descontinua para as contas pagas em 1º de setembro de 2017. Portanto, você precisará usar um serviço de website diferente. Você ajustaria o URL no script com seu próprio URL da web.

#!/bin/bash

# Name:         Open in Microsoft Office Online
# Author:       jbrock; Much thanks to Glutanimate <https://github.com/Glutanimate/>
# Dependencies: dropbox, a web browser (e.g. firefox, chromium...)
# Installation: http://askubuntu.com/q/574252/81372
# License:      GNU GPLv3 (http://www.gnu.de/documents/gpl-3.0.en.html)
# Usage:        open_in_microsoft_office_online <file>

# Variables
pub_path="$HOME/Dropbox/Public"
file="${1##*/}"

# Copy to Dropbox/Public directory.
cp -n "$1" "$pub_path"

# Wait for sync to complete.
while dropbox filestatus "$pub_path/$file" | grep -q syncing; do true; done

# Open in browser. (Get public URL is broken: 6 Sept. 2016)
exo-open "https://view.officeapps.live.com/op/view.aspx?src=https://dl.dropboxusercontent.com/u/4992179/$file" > /dev/null 2>&1 &

# Remove file from Public folder.
# This last part is optional. You probably want to remove your document from a public directory.
# I use this function with Xfce. I am not sure about other desktop environments.
#sleep 15
#trash () {
#dir="$HOME/.local/share/Trash/files/"
#if ! [ -d "$dir" ]; then
#   mkdir "$dir"
#fi
#mv "$@" "$dir"
#}
#trash "$pub_path/$file"
    
por jbrock 19.12.2015 / 19:41
0

Parece que você tem uma versão antiga do libreoffice, se você não tem o latre libreoffice 5, por que você não atualiza?

link

Eu não tenho esse tipo de problema há muito tempo, especialmente com documentos .doc ou .docx, eles têm quase 100% de compatibilidade

    
por albertoefg 19.12.2015 / 19:26
0

Se nenhuma outra maneira, mais óbvia, ajudar, um dos últimos recursos é o uso do pdf, que é portátil entre os sistemas operacionais. Mas, o pdf não é normalmente editável, então é preciso usar copiar e colar. Isso pode arruinar a formatação também às vezes, mas você pode querer manter esta solução em mente e tentar.

    
por Tomasz 19.12.2015 / 22:32