Current File : //proc/thread-self/root/usr/share/vim/vim91/syntax/idl.vim
" Vim syntax file
" Language:    IDL (Interface Description Language)
" Created By:  Jody Goldberg
" Maintainer:  Michael Geddes <vim@frog.wheelycreek.net>
" Last Change:  2012 Jan 11


" This is an experiment.  IDL's structure is simple enough to permit a full
" grammar based approach to rather than using a few heuristics.  The result
" is large and somewhat repetitive but seems to work.

" There are some Microsoft extensions to idl files that are here.  Some of
" them are disabled by defining idl_no_ms_extensions.
"
" The more complex of the extensions are disabled by defining idl_no_extensions.
"
" History:
" 2.0: Michael's new version
" 2.1: Support for Vim 7 spell (Anduin Withers)
"

if exists("b:current_syntax")
  finish
endif

let s:cpo_save = &cpo
try
  set cpo&vim

  if exists("idlsyntax_showerror")
    syn match idlError +\S+ skipwhite skipempty nextgroup=idlError
  endif

  syn region idlCppQuote start='\<cpp_quote\s*(' end=')' contains=idlString

  " Misc basic
  syn match   idlId          contained "[a-zA-Z][a-zA-Z0-9_]*" skipwhite skipempty nextgroup=idlEnumComma,idlEnumNumber
  syn match   idlEnumComma   contained ","
  syn match   idlEnumNumber  contained "=" skipwhite skipempty nextgroup=idlString,idlLiteral
  syn match   idlSemiColon   contained ";"
  syn match   idlCommaArg    contained ","                      skipempty skipwhite nextgroup=idlSimpDecl
  syn region  idlArraySize1  contained start=:\[: end=:\]:      skipempty skipwhite nextgroup=idlArraySize1,idlError,idlSemiColon,idlCommaArg contains=idlArraySize1,idlLiteral
  syn match   idlSimpDecl    contained "[a-zA-Z][a-zA-Z0-9_]*"  skipempty skipwhite nextgroup=idlError,idlSemiColon,idlCommaArg,idlArraySize1
  syn region  idlString      contained start=+"+  skip=+\\\(\\\\\)*"+  end=+"+ contains=@Spell
  syn match   idlLiteral     contained "[1-9]\d*\(\.\d*\)\="
  syn match   idlLiteral     contained "0"
  syn match   idlLiteral     contained "\.\d\+"
  syn match   idlLiteral     contained "0x[0-9A-Fa-f]\+"
  syn match   idlLiteral     contained "0[0-7]\+"
  syn keyword idlLiteral     contained TRUE FALSE

  " Comments
  syn keyword idlTodo        contained TODO FIXME XXX
  syn region idlComment      start="/\*"  end="\*/" contains=idlTodo,@Spell
  syn match  idlComment      "//.*" contains=idlTodo,@Spell
  syn match  idlCommentError "\*/"

  " C style Preprocessor
  syn region idlIncluded    contained start=+"+  skip=+\\\(\\\\\)*"+  end=+"+
  syn match  idlIncluded    contained "<[^>]*>"
  syn match  idlInclude     "^[ \t]*#[ \t]*include\>[ \t]*["<]" contains=idlIncluded,idlString
  syn region idlPreCondit   start="^[ \t]*#[ \t]*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)"  skip="\\$"  end="$" contains=idlComment,idlCommentError
  syn region idlDefine      start="^[ \t]*#[ \t]*\(define\>\|undef\>\)" skip="\\$" end="$" contains=idlLiteral,idlString

  " Constants
  syn keyword idlConst    const                             skipempty skipwhite nextgroup=idlBaseType,idlBaseTypeInt

  " Attribute
  syn keyword idlROAttr   readonly                          skipempty skipwhite nextgroup=idlAttr
  syn keyword idlAttr     attribute                         skipempty skipwhite nextgroup=idlBaseTypeInt,idlBaseType

  " Types
  syn region  idlD4          contained start="<" end=">"    skipempty skipwhite nextgroup=idlSimpDecl contains=idlSeqType,idlBaseTypeInt,idlBaseType,idlLiteral
  syn keyword idlSeqType     contained sequence             skipempty skipwhite nextgroup=idlD4
  syn keyword idlBaseType    contained float double char boolean octet any skipempty skipwhite nextgroup=idlSimpDecl
  syn keyword idlBaseTypeInt contained short long           skipempty skipwhite nextgroup=idlSimpDecl
  syn keyword idlBaseType    contained unsigned             skipempty skipwhite nextgroup=idlBaseTypeInt
  syn region  idlD1          contained start="<" end=">"    skipempty skipwhite nextgroup=idlSimpDecl contains=idlString,idlLiteral
  syn keyword idlBaseType    contained string               skipempty skipwhite nextgroup=idlD1,idlSimpDecl
  syn match   idlBaseType    contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*"  skipempty skipwhite nextgroup=idlSimpDecl

  " Modules
  syn region  idlModuleContent contained start="{" end="}"  skipempty skipwhite nextgroup=idlError,idlSemiColon contains=idlUnion,idlStruct,idlEnum,idlInterface,idlComment,idlTypedef,idlConst,idlException,idlModule
  syn match   idlModuleName  contained "[a-zA-Z0-9_]\+"     skipempty skipwhite nextgroup=idlModuleContent,idlError,idlSemiColon
  syn keyword idlModule      module                         skipempty skipwhite nextgroup=idlModuleName

  " Interfaces
  syn cluster idlCommentable contains=idlComment
  syn cluster idlContentCluster contains=idlUnion,idlStruct,idlEnum,idlROAttr,idlAttr,idlOp,idlOneWayOp,idlException,idlConst,idlTypedef,idlAttributes,idlErrorSquareBracket,idlErrorBracket,idlInterfaceSections

  syn region  idlInterfaceContent contained start="{" end="}"   skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlContentCluster,@idlCommentable
  syn match   idlInheritFrom2 contained ","                     skipempty skipwhite nextgroup=idlInheritFrom
  syn match   idlInheritFrom contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlInheritFrom2,idlInterfaceContent
  syn match   idlInherit contained ":"                            skipempty skipwhite nextgroup=idlInheritFrom
  syn match   idlInterfaceName contained "[a-zA-Z0-9_]\+"       skipempty skipwhite nextgroup=idlInterfaceContent,idlInherit,idlError,idlSemiColon
  syn keyword idlInterface     interface dispinterface          skipempty skipwhite nextgroup=idlInterfaceName
  syn keyword idlInterfaceSections contained properties methods skipempty skipwhite nextgroup=idlSectionColon,idlError
  syn match   idlSectionColon contained ":"


  syn match   idlLibraryName  contained  "[a-zA-Z0-9_]\+"       skipempty skipwhite nextgroup=idlLibraryContent,idlError,idlSemiColon
  syn keyword idlLibrary      library                           skipempty skipwhite nextgroup=idlLibraryName
  syn region  idlLibraryContent contained start="{" end="}"     skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlCommentable,idlAttributes,idlErrorSquareBracket,idlErrorBracket,idlImportlib,idlCoclass,idlTypedef,idlInterface

  syn keyword idlImportlib contained importlib                  skipempty skipwhite nextgroup=idlStringArg
  syn region idlStringArg contained start="(" end=")"           contains=idlString nextgroup=idlError,idlSemiColon,idlErrorBrace,idlErrorSquareBracket

  syn keyword idlCoclass coclass contained                      skipempty skipwhite nextgroup=idlCoclassName
  syn match   idlCoclassName "[a-zA-Z0-9_]\+" contained         skipempty skipwhite nextgroup=idlCoclassDefinition,idlError,idlSemiColon

  syn region idlCoclassDefinition contained start="{" end="}"   contains=idlCoclassAttributes,idlInterface,idlErrorBracket,idlErrorSquareBracket skipempty skipwhite nextgroup=idlError,idlSemiColon
  syn region idlCoclassAttributes contained start=+\[+ end=+]+  skipempty skipwhite nextgroup=idlInterface contains=idlErrorBracket,idlErrorBrace,idlCoclassAttribute
  syn keyword idlCoclassAttribute contained default source
  "syn keyword idlInterface       interface                      skipempty skipwhite nextgroup=idlInterfaceStubName

  syn match idlImportString       +"\f\+"+                      skipempty skipwhite nextgroup=idlError,idlSemiColon
  syn keyword idlImport           import                        skipempty skipwhite nextgroup=idlImportString

  syn region  idlAttributes start="\[" end="\]"                 contains=idlAttribute,idlAttributeParam,idlErrorBracket,idlErrorBrace,idlComment
  syn keyword idlAttribute contained propput propget propputref id helpstring object uuid pointer_default
  if !exists('idl_no_ms_extensions')
  syn keyword idlAttribute contained nonextensible dual version aggregatable restricted hidden noncreatable oleautomation
  endif
  syn region idlAttributeParam contained start="(" end=")"      contains=idlString,idlUuid,idlLiteral,idlErrorBrace,idlErrorSquareBracket
  " skipwhite nextgroup=idlArraySize,idlParmList contains=idlArraySize,idlLiteral
  syn match idlErrorBrace contained "}"
  syn match idlErrorBracket contained ")"
  syn match idlErrorSquareBracket contained "\]"

  syn match idlUuid         contained +[0-9a-zA-Z]\{8}-\([0-9a-zA-Z]\{4}-\)\{3}[0-9a-zA-Z]\{12}+

  " Raises
  syn keyword idlRaises     contained raises               skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon

  " Context
  syn keyword idlContext    contained context              skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon

  " Operation
  syn match   idlParmList   contained ","                  skipempty skipwhite nextgroup=idlOpParms
  syn region  idlArraySize  contained start="\[" end="\]"  skipempty skipwhite nextgroup=idlArraySize,idlParmList contains=idlArraySize,idlLiteral
  syn match   idlParmName   contained "[a-zA-Z0-9_]\+"     skipempty skipwhite nextgroup=idlParmList,idlArraySize
  syn keyword idlParmInt    contained short long           skipempty skipwhite nextgroup=idlParmName
  syn keyword idlParmType   contained unsigned             skipempty skipwhite nextgroup=idlParmInt
  syn region  idlD3         contained start="<" end=">"    skipempty skipwhite nextgroup=idlParmName contains=idlString,idlLiteral
  syn keyword idlParmType   contained string               skipempty skipwhite nextgroup=idlD3,idlParmName
  syn keyword idlParmType   contained void float double char boolean octet any    skipempty skipwhite nextgroup=idlParmName
  syn match   idlParmType   contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlParmName
  syn keyword idlOpParms    contained in out inout         skipempty skipwhite nextgroup=idlParmType

  if !exists('idl_no_ms_extensions')
  syn keyword idlOpParms    contained retval optional      skipempty skipwhite nextgroup=idlParmType
    syn match idlOpParms contained +\<\(iid_is\|defaultvalue\)\s*([^)]*)+ skipempty skipwhite nextgroup=idlParamType

    syn keyword idlVariantType  contained BSTR VARIANT VARIANT_BOOL long short unsigned double CURRENCY DATE
    syn region idlSafeArray contained matchgroup=idlVariantType start=+SAFEARRAY(\s*+ end=+)+ contains=idlVariantType
  endif

  syn region  idlOpContents contained start="(" end=")"    skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon contains=idlOpParms,idlSafeArray,idlVariantType,@idlCommentable
  syn match   idlOpName   contained "[a-zA-Z0-9_]\+"       skipempty skipwhite nextgroup=idlOpContents
  syn keyword idlOpInt    contained short long             skipempty skipwhite nextgroup=idlOpName
  syn region  idlD2       contained start="<" end=">"      skipempty skipwhite nextgroup=idlOpName contains=idlString,idlLiteral
  syn keyword idlOp       contained unsigned               skipempty skipwhite nextgroup=idlOpInt
  syn keyword idlOp       contained string                 skipempty skipwhite nextgroup=idlD2,idlOpName
  syn keyword idlOp       contained void float double char boolean octet any  skipempty skipwhite nextgroup=idlOpName
  syn match   idlOp       contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlOpName
  syn keyword idlOp       contained void                   skipempty skipwhite nextgroup=idlOpName
  syn keyword idlOneWayOp contained oneway                 skipempty skipwhite nextgroup=idOp

  " Enum
  syn region  idlEnumContents contained start="{" end="}"  skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlId,idlAttributes,@idlCommentable
  syn match   idlEnumName contained "[a-zA-Z0-9_]\+"       skipempty skipwhite nextgroup=idlEnumContents
  syn keyword idlEnum     enum                             skipempty skipwhite nextgroup=idlEnumName,idlEnumContents

  " Typedef
  syn keyword idlTypedef typedef                          skipempty skipwhite nextgroup=idlTypedefOtherTypeQualifier,idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlDefAttributes,idlError

  if !exists('idl_no_extensions')
    syn keyword idlTypedefOtherTypeQualifier contained struct enum interface nextgroup=idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlDefAttributes,idlError skipwhite

    syn region  idlDefAttributes        contained start="\[" end="\]" contains=idlAttribute,idlAttributeParam,idlErrorBracket,idlErrorBrace skipempty skipwhite nextgroup=idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlError

    syn keyword idlDefBaseType      contained float double char boolean octet any  skipempty skipwhite nextgroup=idlTypedefDecl,idlError
    syn keyword idlDefBaseTypeInt   contained short long                           skipempty skipwhite nextgroup=idlTypedefDecl,idlError
    syn match idlDefOtherType       contained +\<\k\+\>+ skipempty                 nextgroup=idlTypedefDecl,idlError
    " syn keyword idlDefSeqType     contained sequence                             skipempty skipwhite nextgroup=idlD4

    " Enum typedef
    syn keyword idlDefEnum          contained enum skipempty                       skipwhite nextgroup=idlDefEnumName,idlDefEnumContents
    syn match   idlDefEnumName      contained "[a-zA-Z0-9_]\+"                     skipempty skipwhite nextgroup=idlDefEnumContents,idlTypedefDecl
    syn region  idlDefEnumContents  contained start="{" end="}"                    skipempty skipwhite nextgroup=idlError,idlTypedefDecl contains=idlId,idlAttributes

    syn match   idlTypedefDecl      contained "[a-zA-Z0-9_]\+"                     skipempty skipwhite nextgroup=idlError,idlSemiColon
  endif

  " Struct
  syn region  idlStructContent   contained start="{" end="}"   skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlBaseType,idlBaseTypeInt,idlSeqType,@idlCommentable,idlEnum,idlUnion
  syn match   idlStructName      contained "[a-zA-Z0-9_]\+"    skipempty skipwhite nextgroup=idlStructContent
  syn keyword idlStruct          struct                        skipempty skipwhite nextgroup=idlStructName

  " Exception
  syn keyword idlException       exception                     skipempty skipwhite nextgroup=idlStructName

  " Union
  syn match   idlColon            contained ":"                skipempty skipwhite nextgroup=idlCase,idlSeqType,idlBaseType,idlBaseTypeInt
  syn region  idlCaseLabel        contained start="" skip="::" end=":"me=e-1 skipempty skipwhite nextgroup=idlColon contains=idlLiteral,idlString
  syn keyword idlCase             contained case               skipempty skipwhite nextgroup=idlCaseLabel
  syn keyword idlCase             contained default            skipempty skipwhite nextgroup=idlColon
  syn region  idlUnionContent     contained start="{" end="}"  skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlCase
  syn region  idlSwitchType       contained start="(" end=")"  skipempty skipwhite nextgroup=idlUnionContent
  syn keyword idlUnionSwitch      contained switch             skipempty skipwhite nextgroup=idlSwitchType
  syn match   idlUnionName        contained "[a-zA-Z0-9_]\+"   skipempty skipwhite nextgroup=idlUnionSwitch
  syn keyword idlUnion            union                        skipempty skipwhite nextgroup=idlUnionName

  if !exists('idl_no_extensions')
    syn sync match  idlInterfaceSync grouphere idlInterfaceContent "\<\(disp\)\=interface\>\s\+\k\+\s*:\s*\k\+\_s*{" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlContentCluster,@idlCommentable
    syn sync maxlines=1000 minlines=100
  else
    syn sync lines=200
  endif
  " syn sync fromstart

  if !exists("did_idl_syntax_inits")
    let did_idl_syntax_inits = 1
    " The default methods for highlighting.  Can be overridden later

    hi def link idlInclude             Include
    hi def link idlPreProc             PreProc
    hi def link idlPreCondit           PreCondit
    hi def link idlDefine              Macro
    hi def link idlIncluded            String
    hi def link idlString              String
    hi def link idlComment             Comment
    hi def link idlTodo                Todo
    hi def link idlLiteral             Number
    hi def link idlUuid                Number
    hi def link idlType                Type
    hi def link idlVariantType         idlType

    hi def link idlModule              Keyword
    hi def link idlInterface           Keyword
    hi def link idlEnum                Keyword
    hi def link idlStruct              Keyword
    hi def link idlUnion               Keyword
    hi def link idlTypedef             Keyword
    hi def link idlException           Keyword
    hi def link idlTypedefOtherTypeQualifier keyword

    hi def link idlModuleName          Typedef
    hi def link idlInterfaceName       Typedef
    hi def link idlEnumName            Typedef
    hi def link idlStructName          Typedef
    hi def link idlUnionName           Typedef

    hi def link idlBaseTypeInt         idlType
    hi def link idlBaseType            idlType
    hi def link idlSeqType             idlType
    hi def link idlD1                  Paren
    hi def link idlD2                  Paren
    hi def link idlD3                  Paren
    hi def link idlD4                  Paren
    "hi def link idlArraySize          Paren
    "hi def link idlArraySize1         Paren
    hi def link idlModuleContent       Paren
    hi def link idlUnionContent        Paren
    hi def link idlStructContent       Paren
    hi def link idlEnumContents        Paren
    hi def link idlInterfaceContent    Paren

    hi def link idlSimpDecl            Identifier
    hi def link idlROAttr              StorageClass
    hi def link idlAttr                Keyword
    hi def link idlConst               StorageClass

    hi def link idlOneWayOp            StorageClass
    hi def link idlOp                  idlType
    hi def link idlParmType            idlType
    hi def link idlOpName              Function
    hi def link idlOpParms             SpecialComment
    hi def link idlParmName            Identifier
    hi def link idlInheritFrom         Identifier
    hi def link idlAttribute           SpecialComment

    hi def link idlId                  Constant
    "hi def link idlCase               Keyword
    hi def link idlCaseLabel           Constant

    hi def link idlErrorBracket        Error
    hi def link idlErrorBrace          Error
    hi def link idlErrorSquareBracket  Error

    hi def link idlImport              Keyword
    hi def link idlImportString        idlString
    hi def link idlCoclassAttribute    StorageClass
    hi def link idlLibrary             Keyword
    hi def link idlImportlib           Keyword
    hi def link idlCoclass             Keyword
    hi def link idlLibraryName         Typedef
    hi def link idlCoclassName         Typedef
    " hi def link idlLibraryContent guifg=red
    hi def link idlTypedefDecl         Typedef
    hi def link idlDefEnum             Keyword
    hi def link idlDefv1Enum           Keyword
    hi def link idlDefEnumName         Typedef
    hi def link idlDefEnumContents     Paren
    hi def link idlDefBaseTypeInt      idlType
    hi def link idlDefBaseType         idlType
    hi def link idlDefSeqType          idlType
    hi def link idlInterfaceSections   Label

    if exists("idlsyntax_showerror")
      if exists("idlsyntax_showerror_soft")
        hi default idlError guibg=#d0ffd0
      else
        hi def link idlError Error
      endif
    endif
  endif

  let b:current_syntax = "idl"
finally
  let &cpo = s:cpo_save
  unlet s:cpo_save
endtry
" vim: sw=2 et
¿Qué es la limpieza dental de perros? - Clínica veterinaria


Es la eliminación del sarro y la placa adherida a la superficie de los dientes mediante un equipo de ultrasonidos que garantiza la integridad de las piezas dentales a la vez que elimina en profundidad cualquier resto de suciedad.

A continuación se procede al pulido de los dientes mediante una fresa especial que elimina la placa bacteriana y devuelve a los dientes el aspecto sano que deben tener.

Una vez terminado todo el proceso, se mantiene al perro en observación hasta que se despierta de la anestesia, bajo la atenta supervisión de un veterinario.

¿Cada cuánto tiempo tengo que hacerle una limpieza dental a mi perro?

A partir de cierta edad, los perros pueden necesitar una limpieza dental anual o bianual. Depende de cada caso. En líneas generales, puede decirse que los perros de razas pequeñas suelen acumular más sarro y suelen necesitar una atención mayor en cuanto a higiene dental.


Riesgos de una mala higiene


Los riesgos más evidentes de una mala higiene dental en los perros son los siguientes:

  • Cuando la acumulación de sarro no se trata, se puede producir una inflamación y retracción de las encías que puede descalzar el diente y provocar caídas.
  • Mal aliento (halitosis).
  • Sarro perros
  • Puede ir a más
  • Las bacterias de la placa pueden trasladarse a través del torrente circulatorio a órganos vitales como el corazón ocasionando problemas de endocarditis en las válvulas. Las bacterias pueden incluso acantonarse en huesos (La osteomielitis es la infección ósea, tanto cortical como medular) provocando mucho dolor y una artritis séptica).

¿Cómo se forma el sarro?

El sarro es la calcificación de la placa dental. Los restos de alimentos, junto con las bacterias presentes en la boca, van a formar la placa bacteriana o placa dental. Si la placa no se retira, al mezclarse con la saliva y los minerales presentes en ella, reaccionará formando una costra. La placa se calcifica y se forma el sarro.

El sarro, cuando se forma, es de color blanquecino pero a medida que pasa el tiempo se va poniendo amarillo y luego marrón.

Síntomas de una pobre higiene dental
La señal más obvia de una mala salud dental canina es el mal aliento.

Sin embargo, a veces no es tan fácil de detectar
Y hay perros que no se dejan abrir la boca por su dueño. Por ejemplo…

Recientemente nos trajeron a la clínica a un perro que parpadeaba de un ojo y decía su dueño que le picaba un lado de la cara. Tenía molestias y dificultad para comer, lo que había llevado a sus dueños a comprarle comida blanda (que suele ser un poco más cara y llevar más contenido en grasa) durante medio año. Después de una exploración oftalmológica, nos dimos cuenta de que el ojo tenía una úlcera en la córnea probablemente de rascarse . Además, el canto lateral del ojo estaba inflamado. Tenía lo que en humanos llamamos flemón pero como era un perro de pelo largo, no se le notaba a simple vista. Al abrirle la boca nos llamó la atención el ver una muela llena de sarro. Le realizamos una radiografía y encontramos una fístula que llegaba hasta la parte inferior del ojo.

Le tuvimos que extraer la muela. Tras esto, el ojo se curó completamente con unos colirios y una lentilla protectora de úlcera. Afortunadamente, la úlcera no profundizó y no perforó el ojo. Ahora el perro come perfectamente a pesar de haber perdido una muela.

¿Cómo mantener la higiene dental de tu perro?
Hay varias maneras de prevenir problemas derivados de la salud dental de tu perro.

Limpiezas de dientes en casa
Es recomendable limpiar los dientes de tu perro semanal o diariamente si se puede. Existe una gran variedad de productos que se pueden utilizar:

Pastas de dientes.
Cepillos de dientes o dedales para el dedo índice, que hacen más fácil la limpieza.
Colutorios para echar en agua de bebida o directamente sobre el diente en líquido o en spray.

En la Clínica Tus Veterinarios enseñamos a nuestros clientes a tomar el hábito de limpiar los dientes de sus perros desde que son cachorros. Esto responde a nuestro compromiso con la prevención de enfermedades caninas.

Hoy en día tenemos muchos clientes que limpian los dientes todos los días a su mascota, y como resultado, se ahorran el dinero de hacer limpiezas dentales profesionales y consiguen una mejor salud de su perro.


Limpiezas dentales profesionales de perros y gatos

Recomendamos hacer una limpieza dental especializada anualmente. La realizamos con un aparato de ultrasonidos que utiliza agua para quitar el sarro. Después, procedemos a pulir los dientes con un cepillo de alta velocidad y una pasta especial. Hacemos esto para proteger el esmalte.

La frecuencia de limpiezas dentales necesaria varía mucho entre razas. En general, las razas grandes tienen buena calidad de esmalte, por lo que no necesitan hacerlo tan a menudo e incluso pueden pasarse la vida sin requerir una limpieza. Sin embargo, razas pequeñas como el Yorkshire o el Maltés, deben hacérselas todos los años desde cachorros si se quiere conservar sus piezas dentales.

Otro factor fundamental es la calidad del pienso. Algunas marcas han diseñado croquetas que limpian la superficie del diente y de la muela al masticarse.

Ultrasonido para perros

¿Se necesita anestesia para las limpiezas dentales de perros y gatos?

La limpieza dental en perros no es una técnica que pueda practicarse sin anestesia general , aunque hay veces que los propietarios no quieren anestesiar y si tiene poco sarro y el perro es muy bueno se puede intentar…… , pero no se va a poder pulir ni acceder a todas la zona de la boca …. Además los limpiadores dentales van a irrigar agua y hay riesgo de aspiración a vías respiratorias si no se realiza una anestesia correcta con intubación traqueal . En resumen , sin anestesia no se va hacer una correcta limpieza dental.

Tampoco sirve la sedación ya que necesitamos que el animal esté totalmente quieto, y el veterinario tenga un acceso completo a todas sus piezas dentales y encías.

Alimentos para la limpieza dental

Hay que tener cierto cuidado a la hora de comprar determinados alimentos porque no todos son saludables. Algunos tienen demasiado contenido graso, que en exceso puede causar problemas cardiovasculares y obesidad.

Los mejores alimentos para los dientes son aquellos que están elaborados por empresas farmacéuticas y llevan componentes químicos con tratamientos específicos para el diente del perro. Esto implica no solo limpieza a través de la acción mecánica de morder sino también un tratamiento antibacteriano para prevenir el sarro.

Conclusión

Si eres como la mayoría de dueños, por falta de tiempo , es probable que no estés prestando la suficiente atención a la limpieza dental de tu perro. Por eso te animamos a que comiences a limpiar los dientes de tu perro y consideres atender a su higiene bucal con frecuencia.

Estas simples medidas pueden conllevar a que tu perro tenga una vida más larga y mucho más saludable.

Si te resulta imposible introducir un cepillo de dientes a tu perro en la boca, pásate con él por clínica Tus Veterinarios y te explicamos cómo hacerlo.

Necesitas hacer una limpieza dental profesional a tu mascota?
Llámanos al 622575274 o contacta con nosotros

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

¡Hola!